From 4555062165bf45925ea87225735fac5e5cb0c7d1 Mon Sep 17 00:00:00 2001 From: billy rennekamp Date: Sun, 2 May 2021 14:51:01 +0200 Subject: [PATCH] verifiable proxy --- build/contracts/Doneth.json | 16145 +++++++++++++--------------- build/contracts/ERC20.json | 15716 +++++++++++++-------------- build/contracts/ERC20Basic.json | 15716 +++++++++++++-------------- build/contracts/IDoneth.json | 1344 +++ build/contracts/Migrations.json | 2 +- build/contracts/Proxy.json | 872 ++ build/contracts/ProxyFactory.json | 1584 +-- build/contracts/SafeMath.json | 15726 +++++++++++++-------------- contracts/Doneth.sol | 57 +- contracts/Factory.sol | 126 +- contracts/Proxy.sol | 12 +- contracts/ProxyFactory.sol | 46 +- package.json | 1 + src/components/Contract.vue | 11 +- src/components/Deploy.vue | 97 +- src/components/PatronCard.vue | 2 +- truffle.js | 2 +- yarn.lock | 5 + 18 files changed, 32360 insertions(+), 35104 deletions(-) create mode 100644 build/contracts/IDoneth.json create mode 100644 build/contracts/Proxy.json diff --git a/build/contracts/Doneth.json b/build/contracts/Doneth.json index 834a2247..b1ef2a1a 100644 --- a/build/contracts/Doneth.json +++ b/build/contracts/Doneth.json @@ -80,17 +80,12 @@ }, { "constant": true, - "inputs": [ - { - "name": "", - "type": "uint256" - } - ], - "name": "tokenKeys", + "inputs": [], + "name": "totalShares", "outputs": [ { "name": "", - "type": "address" + "type": "uint256" } ], "payable": false, @@ -100,7 +95,7 @@ { "constant": true, "inputs": [], - "name": "totalShares", + "name": "totalWithdrawn", "outputs": [ { "name": "", @@ -114,11 +109,11 @@ { "constant": true, "inputs": [], - "name": "totalWithdrawn", + "name": "implementation", "outputs": [ { "name": "", - "type": "uint256" + "type": "address" } ], "payable": false, @@ -192,11 +187,7 @@ "name": "tokens", "outputs": [ { - "name": "exists", - "type": "bool" - }, - { - "name": "totalWithdrawn", + "name": "", "type": "uint256" } ], @@ -204,20 +195,6 @@ "stateMutability": "view", "type": "function" }, - { - "constant": false, - "inputs": [ - { - "name": "newOwner", - "type": "address" - } - ], - "name": "transferOwnership", - "outputs": [], - "payable": false, - "stateMutability": "nonpayable", - "type": "function" - }, { "constant": true, "inputs": [ @@ -462,18 +439,32 @@ "name": "WithdrawSharedExpense", "type": "event" }, + { + "constant": false, + "inputs": [], + "name": "Ownable", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, { "constant": false, "inputs": [ { - "name": "_contractName", - "type": "string" - }, - { - "name": "_founderName", - "type": "string" + "name": "newOwner", + "type": "address" } ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [], "name": "init", "outputs": [], "payable": false, @@ -911,33 +902,30 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"genesisBlockNumber\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"members\",\"outputs\":[{\"name\":\"exists\",\"type\":\"bool\"},{\"name\":\"admin\",\"type\":\"bool\"},{\"name\":\"shares\",\"type\":\"uint256\"},{\"name\":\"withdrawn\",\"type\":\"uint256\"},{\"name\":\"memberName\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"newName\",\"type\":\"string\"}],\"name\":\"changeMemberName\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getBalance\",\"outputs\":[{\"name\":\"balance\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newAllocation\",\"type\":\"uint256\"}],\"name\":\"changeSharedExpenseAllocation\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"initialized\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"to\",\"type\":\"address\"}],\"name\":\"withdrawSharedExpense\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"token\",\"type\":\"address\"}],\"name\":\"calculateTotalWithdrawableTokenAmount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"tokenKeys\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"}],\"name\":\"calculateTotalWithdrawableAmount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalShares\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"calculateTotalExpenseWithdrawableAmount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalWithdrawn\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"addShare\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"shares\",\"type\":\"uint256\"},{\"name\":\"admin\",\"type\":\"bool\"},{\"name\":\"memberName\",\"type\":\"string\"}],\"name\":\"addMember\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"sharedExpenseWithdrawn\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_contractName\",\"type\":\"string\"},{\"name\":\"_founderName\",\"type\":\"string\"}],\"name\":\"init\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getContractInfo\",\"outputs\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"genesisBlockNumber\",\"type\":\"uint256\"},{\"name\":\"totalShares\",\"type\":\"uint256\"},{\"name\":\"totalWithdrawn\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"a\",\"type\":\"uint256\"},{\"name\":\"b\",\"type\":\"uint256\"},{\"name\":\"c\",\"type\":\"uint256\"}],\"name\":\"delegatePercent\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"newValue\",\"type\":\"bool\"}],\"name\":\"changeAdminPrivilege\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_address\",\"type\":\"address\"}],\"name\":\"returnMember\",\"outputs\":[{\"name\":\"admin\",\"type\":\"bool\"},{\"name\":\"shares\",\"type\":\"uint256\"},{\"name\":\"withdrawn\",\"type\":\"uint256\"},{\"name\":\"memberName\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"allocateShares\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getMemberCount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"token\",\"type\":\"address\"}],\"name\":\"checkERC20Balance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"sharedExpense\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"PRECISION\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newName\",\"type\":\"string\"}],\"name\":\"changeContractName\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"key\",\"type\":\"uint256\"}],\"name\":\"getMemberAtKey\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"token\",\"type\":\"address\"}],\"name\":\"withdrawToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"removeShare\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"tokens\",\"outputs\":[{\"name\":\"exists\",\"type\":\"bool\"},{\"name\":\"totalWithdrawn\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"memberKeys\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"shares\",\"type\":\"uint256\"},{\"name\":\"isAdmin\",\"type\":\"bool\"},{\"name\":\"name\",\"type\":\"string\"}],\"name\":\"updateMember\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newTotalWithdrawn\",\"type\":\"uint256\"}],\"name\":\"Withdraw\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"TokenWithdraw\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"addedShares\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newTotalShares\",\"type\":\"uint256\"}],\"name\":\"AddShare\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"removedShares\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newTotalShares\",\"type\":\"uint256\"}],\"name\":\"RemoveShare\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"oldValue\",\"type\":\"bool\"},{\"indexed\":false,\"name\":\"newValue\",\"type\":\"bool\"}],\"name\":\"ChangePrivilege\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"oldValue\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"newValue\",\"type\":\"string\"}],\"name\":\"ChangeContractName\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"oldValue\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"newValue\",\"type\":\"string\"}],\"name\":\"ChangeMemberName\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"contractBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"oldValue\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newValue\",\"type\":\"uint256\"}],\"name\":\"ChangeSharedExpense\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newSharedExpenseWithdrawn\",\"type\":\"uint256\"}],\"name\":\"WithdrawSharedExpense\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol\":\"Doneth\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol\":{\"keccak256\":\"0xf4cee83d417df0c8d96b5a2c651f061dcec6f27d427f7c1790649772774abdb8\",\"urls\":[\"bzzr://b2a7821b45d082849046709df4c0f691d76d3d1def45d6ba9eb085764fb482cf\"]}},\"version\":1}", - "bytecode": "0x6080604052326000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550613c71806100536000396000f3006080604052600436106101cd576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630356fe3a1461023a57806306fdde031461026557806308ae4b0c146102f55780630d6d1437146103d557806312065fe01461045e5780631468fc2614610489578063158ef93e146104b657806324e2ca92146104e55780632e1a7d4d146105325780632f0ae5131461055f578063346692b7146105d6578063389435e8146106435780633a98ef391461069a5780634a914e8c146106c55780634b319713146106f057806350f4f9f81461071b5780635ea40983146107685780636e2fd470146108075780637029144c146108325780637cc1f867146108e15780637d22f431146109b957806380056b5b14610a0e57806385dcbb5a14610a5d5780638da5cb5b14610b325780638e2a647014610b89578063997072f714610bd65780639b3bc6fb14610c015780639d21328f14610c58578063aaf5eb6814610c83578063ad3cd88314610cae578063aec8fae814610d17578063be4b177214610d84578063c06474e014610dd1578063e486033914610e1e578063f2fde38b14610e80578063f504b08914610ec3578063fac2548b14610f30575b7fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c3334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1005b34801561024657600080fd5b5061024f610fcf565b6040518082815260200191505060405180910390f35b34801561027157600080fd5b5061027a610fd5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102ba57808201518184015260208101905061029f565b50505050905090810190601f1680156102e75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561030157600080fd5b50610336600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611073565b60405180861515151581526020018515151515815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561039657808201518184015260208101905061037b565b50505050905090810190601f1680156103c35780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103e157600080fd5b5061045c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061115b565b005b34801561046a57600080fd5b506104736114a9565b6040518082815260200191505060405180910390f35b34801561049557600080fd5b506104b4600480360381019080803590602001909291905050506114c8565b005b3480156104c257600080fd5b506104cb61162b565b604051808215151515815260200191505060405180910390f35b3480156104f157600080fd5b5061053060048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061163e565b005b34801561053e57600080fd5b5061055d60048036038101908080359060200190929190505050611815565b005b34801561056b57600080fd5b506105c0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a56565b6040518082815260200191505060405180910390f35b3480156105e257600080fd5b5061060160048036038101908080359060200190929190505050611b54565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561064f57600080fd5b50610684600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b92565b6040518082815260200191505060405180910390f35b3480156106a657600080fd5b506106af611ce9565b6040518082815260200191505060405180910390f35b3480156106d157600080fd5b506106da611cef565b6040518082815260200191505060405180910390f35b3480156106fc57600080fd5b50610705611d0d565b6040518082815260200191505060405180910390f35b34801561072757600080fd5b50610766600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d13565b005b34801561077457600080fd5b50610805600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803515159060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611f93565b005b34801561081357600080fd5b5061081c61220d565b6040518082815260200191505060405180910390f35b34801561083e57600080fd5b506108df600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050612213565b005b3480156108ed57600080fd5b506108f66125ef565b60405180806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001858152602001848152602001838152602001828103825287818151815260200191508051906020019080838360005b8381101561097a57808201518184015260208101905061095f565b50505050905090810190601f1680156109a75780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156109c557600080fd5b506109f8600480360381019080803590602001909291908035906020019092919080359060200190929190505050612610565b6040518082815260200191505060405180910390f35b348015610a1a57600080fd5b50610a5b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050612630565b005b348015610a6957600080fd5b50610a9e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061280b565b604051808515151515815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610af4578082015181840152602081019050610ad9565b50505050905090810190601f168015610b215780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b348015610b3e57600080fd5b50610b476129d7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b9557600080fd5b50610bd4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506129fc565b005b348015610be257600080fd5b50610beb612bac565b6040518082815260200191505060405180910390f35b348015610c0d57600080fd5b50610c42600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612bb9565b6040518082815260200191505060405180910390f35b348015610c6457600080fd5b50610c6d612c98565b6040518082815260200191505060405180910390f35b348015610c8f57600080fd5b50610c98612c9e565b6040518082815260200191505060405180910390f35b348015610cba57600080fd5b50610d15600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050612ca3565b005b348015610d2357600080fd5b50610d4260048036038101908080359060200190929190505050612ea7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610d9057600080fd5b50610dcf60048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612eea565b005b348015610ddd57600080fd5b50610e1c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613370565b005b348015610e2a57600080fd5b50610e5f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506135f0565b60405180831515151581526020018281526020019250505060405180910390f35b348015610e8c57600080fd5b50610ec1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613621565b005b348015610ecf57600080fd5b50610eee6004803603810190808035906020019092919050505061374d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610f3c57600080fd5b50610fcd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803515159060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061378b565b005b60045481565b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561106b5780601f106110405761010080835404028352916020019161106b565b820191906000526020600020905b81548152906001019060200180831161104e57829003601f168201915b505050505081565b60076020528060005260406000206000915090508060000160009054906101000a900460ff16908060000160019054906101000a900460ff1690806001015490806002015490806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111515780601f1061112657610100808354040283529160200191611151565b820191906000526020600020905b81548152906001019060200180831161113457829003601f168201915b5050505050905085565b81600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615156111b757600080fd5b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561124057506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b80156112995750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b156112a357600080fd5b6015825111156112b257600080fd5b7f154ad3f744d3641de12f5e012773b0126c47d1ffda727e5a61a2e6db8bb2cb5583600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030184604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001806020018381038352858181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156113d65780601f106113ab576101008083540402835291602001916113d6565b820191906000526020600020905b8154815290600101906020018083116113b957829003601f168201915b5050838103825284818151815260200191508051906020019080838360005b838110156114105780820151818401526020810190506113f5565b50505050905090810190601f16801561143d5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a181600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030190805190602001906114a3929190613aec565b50505050565b60003073ffffffffffffffffffffffffffffffffffffffff1631905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061156f57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16145b151561157a57600080fd5b60065481101561158957600080fd5b3073ffffffffffffffffffffffffffffffffffffffff16316115b660065483613a2990919063ffffffff16565b11156115c157600080fd5b7f5b3ea9617f529540e1c3e0beb0e01c060418c2d1fe48d369afe3d47beaa037cf3073ffffffffffffffffffffffffffffffffffffffff16316005548360405180848152602001838152602001828152602001935050505060405180910390a18060058190555050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156116e85750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b156116f257600080fd5b6116fa611cef565b82111561170657600080fd5b61171b82600654613a4290919063ffffffff16565b6006819055508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611767573d6000803e3d6000fd5b507f223162e752821eb7bd44782f73723defb6e3a087a9afc4d3d4af13783f7b6aca338284600654604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200182815260200194505050505060405180910390a15050565b600033600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561187357600080fd5b61187c33611b92565b91506118d3600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002015483613a2990919063ffffffff16565b8311156118df57600080fd5b61193483600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154613a4290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018190555061198f83600354613a4290919063ffffffff16565b6003819055503373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f193505050501580156119db573d6000803e3d6000fd5b507ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5683384600354604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6000806000806000611abb600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154611aad88612bb9565b613a4290919063ffffffff16565b9350611ad5600254601286613a609092919063ffffffff16565b9250611b2c600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015484613a9e90919063ffffffff16565b9150611b456012600a0a83613ad190919063ffffffff16565b90508094505050505092915050565b600a81815481101515611b6357fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080600085600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515611bf657600080fd5b611c226003543073ffffffffffffffffffffffffffffffffffffffff1631613a4290919063ffffffff16565b9450611c3960055486613a2990919063ffffffff16565b9450611c5060065486613a4290919063ffffffff16565b9450611c6a600254601287613a609092919063ffffffff16565b9350611cc1600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015485613a9e90919063ffffffff16565b9250611cda6012600a0a84613ad190919063ffffffff16565b91508195505050505050919050565b60025481565b6000611d08600654600554613a2990919063ffffffff16565b905090565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611dbd5750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15611dc757600080fd5b81600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515611e2357600080fd5b611e3882600254613a4290919063ffffffff16565b600281905550611e9382600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154613a4290919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a8383600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b611f9b613b6c565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156120455750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561204f57600080fd5b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16156120a957600080fd5b6015825111156120b857600080fd5b60018160000190151590811515815250508281602001901515908115158152505081816080018190525080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548160ff02191690831515021790555060408201518160010155606082015181600201556080820151816003019080519060200190612192929190613ba0565b5090505060088590806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506122068585611d13565b5050505050565b60065481565b61221b613b6c565b600060149054906101000a900460ff161515156122a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f414c524541445920494e495449414c495a45440000000000000000000000000081525060200191505060405180910390fd5b6001600060146101000a81548160ff021916908315150217905550326000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055504360048190555060158351111561231157600080fd5b60158251111561232057600080fd5b8260019080519060200190612336929190613aec565b506001816000019015159081151581525050600181602001901515908115158152505081816080018190525080600760003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548160ff02191690831515021790555060408201518160010155606082015181600201556080820151816003019080519060200190612412929190613ba0565b5090505060083290806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506124926001600254613a4290919063ffffffff16565b6002819055506124ee6001600760003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154613a4290919063ffffffff16565b600760003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a326001600760003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b60606000806000808484848484849450945094509450945094509091929394565b6000612627838386613a609092919063ffffffff16565b90509392505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156126da5750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b156126e457600080fd5b7eb763075216b1778fecb2719c6d2040ed88fdbe6092a9597de5df9d175c968a82600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff1683604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018315151515815260200182151515158152602001935050505060405180910390a180600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160016101000a81548160ff0219169083151502179055505050565b6000806000606061281a613b6c565b85600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561287657600080fd5b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060a060405190810160405290816000820160009054906101000a900460ff161515151581526020016000820160019054906101000a900460ff161515151581526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156129a45780601f10612979576101008083540402835291602001916129a4565b820191906000526020600020905b81548152906001019060200180831161298757829003601f168201915b50505050508152505091508160200151826040015183606001518460800151809050955095509550955050509193509193565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015612aa85750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15612ab257600080fd5b82600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515612b0e57600080fd5b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154915081831415612b6057600080fd5b81831115612b8957612b8484612b7f8486613a2990919063ffffffff16565b611d13565b612ba6565b612ba584612ba08585613a2990919063ffffffff16565b613370565b5b50505050565b6000600880549050905090565b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015612c5657600080fd5b505af1158015612c6a573d6000803e3d6000fd5b505050506040513d6020811015612c8057600080fd5b81019080805190602001909291905050509050919050565b60055481565b601281565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015612d4d5750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15612d5757600080fd5b601581511115612d6657600080fd5b7f7244709f741ec5f1d637fd5a891de308c779d1023c0f3128595bb88bf571ef88600182604051808060200180602001838103835285818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015612e175780601f10612dec57610100808354040283529160200191612e17565b820191906000526020600020905b815481529060010190602001808311612dfa57829003601f168201915b5050838103825284818151815260200191508051906020019080838360005b83811015612e51578082015181840152602081019050612e36565b50505050905090810190601f168015612e7e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a18060019080519060200190612ea3929190613aec565b5050565b6000600882815481101515612eb857fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515612f4857600080fd5b612f523384611a56565b9150612fe6600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483613a2990919063ffffffff16565b841115612ff257600080fd5b61308484600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613a4290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061315c84600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154613a4290919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561324557600080fd5b505af1158015613259573d6000803e3d6000fd5b505050506040513d602081101561326f57600080fd5b8101908080519060200190929190505050507fffdaa1b8f229c4f9a0c79b712224a2ad8d3aa3c483c23a125f4b9c179870938d338585600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200194505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561341a5750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561342457600080fd5b81600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561348057600080fd5b61349582600254613a2990919063ffffffff16565b6002819055506134f082600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154613a2990919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f67d4e98c6b70fdfbb7305797bbb30889a736b9773c74f9557683ffacbd22d5a88383600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b60096020528060005260406000206000915090508060000160009054906101000a900460ff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806136c857506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16145b15156136d357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561374a57806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60088181548110151561375c57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156138355750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561383f57600080fd5b806040518082805190602001908083835b6020831015156138755780518252602082019150602081019050602083039250613850565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160405180828054600181600116156101000203166002900480156139435780601f10613921576101008083540402835291820191613943565b820191906000526020600020905b81548152906001019060200180831161392f575b505091505060405180910390206000191614151561396657613965848261115b565b5b811515600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff1615151415156139cd576139cc8483612630565b5b82600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154141515613a2357613a2284846129fc565b5b50505050565b6000828211151515613a3757fe5b818303905092915050565b6000808284019050838110151515613a5657fe5b8091505092915050565b6000806000613a758660018601600a0a613a9e565b9150600a6005613a858488613ad1565b01811515613a8f57fe5b04905080925050509392505050565b60008082840290506000841480613abf5750828482811515613abc57fe5b04145b1515613ac757fe5b8091505092915050565b6000808284811515613adf57fe5b0490508091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613b2d57805160ff1916838001178555613b5b565b82800160010185558215613b5b579182015b82811115613b5a578251825591602001919060010190613b3f565b5b509050613b689190613c20565b5090565b60a0604051908101604052806000151581526020016000151581526020016000815260200160008152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613be157805160ff1916838001178555613c0f565b82800160010185558215613c0f579182015b82811115613c0e578251825591602001919060010190613bf3565b5b509050613c1c9190613c20565b5090565b613c4291905b80821115613c3e576000816000905550600101613c26565b5090565b905600a165627a7a72305820a25a598a3c4867db366b2ec9ce950b735376cfa296d435919bc498b3fd1e2acb0029", - "deployedBytecode": "0x6080604052600436106101cd576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630356fe3a1461023a57806306fdde031461026557806308ae4b0c146102f55780630d6d1437146103d557806312065fe01461045e5780631468fc2614610489578063158ef93e146104b657806324e2ca92146104e55780632e1a7d4d146105325780632f0ae5131461055f578063346692b7146105d6578063389435e8146106435780633a98ef391461069a5780634a914e8c146106c55780634b319713146106f057806350f4f9f81461071b5780635ea40983146107685780636e2fd470146108075780637029144c146108325780637cc1f867146108e15780637d22f431146109b957806380056b5b14610a0e57806385dcbb5a14610a5d5780638da5cb5b14610b325780638e2a647014610b89578063997072f714610bd65780639b3bc6fb14610c015780639d21328f14610c58578063aaf5eb6814610c83578063ad3cd88314610cae578063aec8fae814610d17578063be4b177214610d84578063c06474e014610dd1578063e486033914610e1e578063f2fde38b14610e80578063f504b08914610ec3578063fac2548b14610f30575b7fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c3334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1005b34801561024657600080fd5b5061024f610fcf565b6040518082815260200191505060405180910390f35b34801561027157600080fd5b5061027a610fd5565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102ba57808201518184015260208101905061029f565b50505050905090810190601f1680156102e75780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561030157600080fd5b50610336600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611073565b60405180861515151581526020018515151515815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b8381101561039657808201518184015260208101905061037b565b50505050905090810190601f1680156103c35780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103e157600080fd5b5061045c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061115b565b005b34801561046a57600080fd5b506104736114a9565b6040518082815260200191505060405180910390f35b34801561049557600080fd5b506104b4600480360381019080803590602001909291905050506114c8565b005b3480156104c257600080fd5b506104cb61162b565b604051808215151515815260200191505060405180910390f35b3480156104f157600080fd5b5061053060048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061163e565b005b34801561053e57600080fd5b5061055d60048036038101908080359060200190929190505050611815565b005b34801561056b57600080fd5b506105c0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611a56565b6040518082815260200191505060405180910390f35b3480156105e257600080fd5b5061060160048036038101908080359060200190929190505050611b54565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561064f57600080fd5b50610684600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611b92565b6040518082815260200191505060405180910390f35b3480156106a657600080fd5b506106af611ce9565b6040518082815260200191505060405180910390f35b3480156106d157600080fd5b506106da611cef565b6040518082815260200191505060405180910390f35b3480156106fc57600080fd5b50610705611d0d565b6040518082815260200191505060405180910390f35b34801561072757600080fd5b50610766600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611d13565b005b34801561077457600080fd5b50610805600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803515159060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611f93565b005b34801561081357600080fd5b5061081c61220d565b6040518082815260200191505060405180910390f35b34801561083e57600080fd5b506108df600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050612213565b005b3480156108ed57600080fd5b506108f66125ef565b60405180806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001858152602001848152602001838152602001828103825287818151815260200191508051906020019080838360005b8381101561097a57808201518184015260208101905061095f565b50505050905090810190601f1680156109a75780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156109c557600080fd5b506109f8600480360381019080803590602001909291908035906020019092919080359060200190929190505050612610565b6040518082815260200191505060405180910390f35b348015610a1a57600080fd5b50610a5b600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803515159060200190929190505050612630565b005b348015610a6957600080fd5b50610a9e600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061280b565b604051808515151515815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610af4578082015181840152602081019050610ad9565b50505050905090810190601f168015610b215780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b348015610b3e57600080fd5b50610b476129d7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610b9557600080fd5b50610bd4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506129fc565b005b348015610be257600080fd5b50610beb612bac565b6040518082815260200191505060405180910390f35b348015610c0d57600080fd5b50610c42600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612bb9565b6040518082815260200191505060405180910390f35b348015610c6457600080fd5b50610c6d612c98565b6040518082815260200191505060405180910390f35b348015610c8f57600080fd5b50610c98612c9e565b6040518082815260200191505060405180910390f35b348015610cba57600080fd5b50610d15600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050612ca3565b005b348015610d2357600080fd5b50610d4260048036038101908080359060200190929190505050612ea7565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610d9057600080fd5b50610dcf60048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612eea565b005b348015610ddd57600080fd5b50610e1c600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050613370565b005b348015610e2a57600080fd5b50610e5f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506135f0565b60405180831515151581526020018281526020019250505060405180910390f35b348015610e8c57600080fd5b50610ec1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050613621565b005b348015610ecf57600080fd5b50610eee6004803603810190808035906020019092919050505061374d565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610f3c57600080fd5b50610fcd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803515159060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061378b565b005b60045481565b60018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561106b5780601f106110405761010080835404028352916020019161106b565b820191906000526020600020905b81548152906001019060200180831161104e57829003601f168201915b505050505081565b60076020528060005260406000206000915090508060000160009054906101000a900460ff16908060000160019054906101000a900460ff1690806001015490806002015490806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156111515780601f1061112657610100808354040283529160200191611151565b820191906000526020600020905b81548152906001019060200180831161113457829003601f168201915b5050505050905085565b81600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615156111b757600080fd5b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561124057506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b80156112995750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b156112a357600080fd5b6015825111156112b257600080fd5b7f154ad3f744d3641de12f5e012773b0126c47d1ffda727e5a61a2e6db8bb2cb5583600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030184604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001806020018381038352858181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156113d65780601f106113ab576101008083540402835291602001916113d6565b820191906000526020600020905b8154815290600101906020018083116113b957829003601f168201915b5050838103825284818151815260200191508051906020019080838360005b838110156114105780820151818401526020810190506113f5565b50505050905090810190601f16801561143d5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a181600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030190805190602001906114a3929190613aec565b50505050565b60003073ffffffffffffffffffffffffffffffffffffffff1631905090565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061156f57506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16145b151561157a57600080fd5b60065481101561158957600080fd5b3073ffffffffffffffffffffffffffffffffffffffff16316115b660065483613a2990919063ffffffff16565b11156115c157600080fd5b7f5b3ea9617f529540e1c3e0beb0e01c060418c2d1fe48d369afe3d47beaa037cf3073ffffffffffffffffffffffffffffffffffffffff16316005548360405180848152602001838152602001828152602001935050505060405180910390a18060058190555050565b600060149054906101000a900460ff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156116e85750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b156116f257600080fd5b6116fa611cef565b82111561170657600080fd5b61171b82600654613a4290919063ffffffff16565b6006819055508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f19350505050158015611767573d6000803e3d6000fd5b507f223162e752821eb7bd44782f73723defb6e3a087a9afc4d3d4af13783f7b6aca338284600654604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200182815260200194505050505060405180910390a15050565b600033600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561187357600080fd5b61187c33611b92565b91506118d3600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002015483613a2990919063ffffffff16565b8311156118df57600080fd5b61193483600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154613a4290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002018190555061198f83600354613a4290919063ffffffff16565b6003819055503373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f193505050501580156119db573d6000803e3d6000fd5b507ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5683384600354604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6000806000806000611abb600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154611aad88612bb9565b613a4290919063ffffffff16565b9350611ad5600254601286613a609092919063ffffffff16565b9250611b2c600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015484613a9e90919063ffffffff16565b9150611b456012600a0a83613ad190919063ffffffff16565b90508094505050505092915050565b600a81815481101515611b6357fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080600080600085600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515611bf657600080fd5b611c226003543073ffffffffffffffffffffffffffffffffffffffff1631613a4290919063ffffffff16565b9450611c3960055486613a2990919063ffffffff16565b9450611c5060065486613a4290919063ffffffff16565b9450611c6a600254601287613a609092919063ffffffff16565b9350611cc1600760008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015485613a9e90919063ffffffff16565b9250611cda6012600a0a84613ad190919063ffffffff16565b91508195505050505050919050565b60025481565b6000611d08600654600554613a2990919063ffffffff16565b905090565b60035481565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611dbd5750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15611dc757600080fd5b81600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515611e2357600080fd5b611e3882600254613a4290919063ffffffff16565b600281905550611e9382600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154613a4290919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a8383600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b611f9b613b6c565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156120455750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561204f57600080fd5b600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16156120a957600080fd5b6015825111156120b857600080fd5b60018160000190151590811515815250508281602001901515908115158152505081816080018190525080600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548160ff02191690831515021790555060408201518160010155606082015181600201556080820151816003019080519060200190612192929190613ba0565b5090505060088590806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506122068585611d13565b5050505050565b60065481565b61221b613b6c565b600060149054906101000a900460ff161515156122a0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f414c524541445920494e495449414c495a45440000000000000000000000000081525060200191505060405180910390fd5b6001600060146101000a81548160ff021916908315150217905550326000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055504360048190555060158351111561231157600080fd5b60158251111561232057600080fd5b8260019080519060200190612336929190613aec565b506001816000019015159081151581525050600181602001901515908115158152505081816080018190525080600760003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548160ff02191690831515021790555060408201518160010155606082015181600201556080820151816003019080519060200190612412929190613ba0565b5090505060083290806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506124926001600254613a4290919063ffffffff16565b6002819055506124ee6001600760003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154613a4290919063ffffffff16565b600760003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a326001600760003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b60606000806000808484848484849450945094509450945094509091929394565b6000612627838386613a609092919063ffffffff16565b90509392505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156126da5750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b156126e457600080fd5b7eb763075216b1778fecb2719c6d2040ed88fdbe6092a9597de5df9d175c968a82600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff1683604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018315151515815260200182151515158152602001935050505060405180910390a180600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160016101000a81548160ff0219169083151502179055505050565b6000806000606061281a613b6c565b85600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561287657600080fd5b600760008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060a060405190810160405290816000820160009054906101000a900460ff161515151581526020016000820160019054906101000a900460ff161515151581526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156129a45780601f10612979576101008083540402835291602001916129a4565b820191906000526020600020905b81548152906001019060200180831161298757829003601f168201915b50505050508152505091508160200151826040015183606001518460800151809050955095509550955050509193509193565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015612aa85750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15612ab257600080fd5b82600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515612b0e57600080fd5b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154915081831415612b6057600080fd5b81831115612b8957612b8484612b7f8486613a2990919063ffffffff16565b611d13565b612ba6565b612ba584612ba08585613a2990919063ffffffff16565b613370565b5b50505050565b6000600880549050905090565b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b158015612c5657600080fd5b505af1158015612c6a573d6000803e3d6000fd5b505050506040513d6020811015612c8057600080fd5b81019080805190602001909291905050509050919050565b60055481565b601281565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015612d4d5750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15612d5757600080fd5b601581511115612d6657600080fd5b7f7244709f741ec5f1d637fd5a891de308c779d1023c0f3128595bb88bf571ef88600182604051808060200180602001838103835285818154600181600116156101000203166002900481526020019150805460018160011615610100020316600290048015612e175780601f10612dec57610100808354040283529160200191612e17565b820191906000526020600020905b815481529060010190602001808311612dfa57829003601f168201915b5050838103825284818151815260200191508051906020019080838360005b83811015612e51578082015181840152602081019050612e36565b50505050905090810190601f168015612e7e5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a18060019080519060200190612ea3929190613aec565b5050565b6000600882815481101515612eb857fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515612f4857600080fd5b612f523384611a56565b9150612fe6600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205483613a2990919063ffffffff16565b841115612ff257600080fd5b61308484600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054613a4290919063ffffffff16565b600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061315c84600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154613a4290919063ffffffff16565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b15801561324557600080fd5b505af1158015613259573d6000803e3d6000fd5b505050506040513d602081101561326f57600080fd5b8101908080519060200190929190505050507fffdaa1b8f229c4f9a0c79b712224a2ad8d3aa3c483c23a125f4b9c179870938d338585600960008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200194505050505060405180910390a150505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561341a5750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561342457600080fd5b81600760008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561348057600080fd5b61349582600254613a2990919063ffffffff16565b6002819055506134f082600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154613a2990919063ffffffff16565b600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f67d4e98c6b70fdfbb7305797bbb30889a736b9773c74f9557683ffacbd22d5a88383600760008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b60096020528060005260406000206000915090508060000160009054906101000a900460ff16908060010154905082565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806136c857506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16145b15156136d357600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561374a57806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60088181548110151561375c57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156138355750600760003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561383f57600080fd5b806040518082805190602001908083835b6020831015156138755780518252602082019150602081019050602083039250613850565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160405180828054600181600116156101000203166002900480156139435780601f10613921576101008083540402835291820191613943565b820191906000526020600020905b81548152906001019060200180831161392f575b505091505060405180910390206000191614151561396657613965848261115b565b5b811515600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff1615151415156139cd576139cc8483612630565b5b82600760008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154141515613a2357613a2284846129fc565b5b50505050565b6000828211151515613a3757fe5b818303905092915050565b6000808284019050838110151515613a5657fe5b8091505092915050565b6000806000613a758660018601600a0a613a9e565b9150600a6005613a858488613ad1565b01811515613a8f57fe5b04905080925050509392505050565b60008082840290506000841480613abf5750828482811515613abc57fe5b04145b1515613ac757fe5b8091505092915050565b6000808284811515613adf57fe5b0490508091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613b2d57805160ff1916838001178555613b5b565b82800160010185558215613b5b579182015b82811115613b5a578251825591602001919060010190613b3f565b5b509050613b689190613c20565b5090565b60a0604051908101604052806000151581526020016000151581526020016000815260200160008152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613be157805160ff1916838001178555613c0f565b82800160010185558215613c0f579182015b82811115613c0e578251825591602001919060010190613bf3565b5b509050613c1c9190613c20565b5090565b613c4291905b80821115613c3e576000816000905550600101613c26565b5090565b905600a165627a7a72305820a25a598a3c4867db366b2ec9ce950b735376cfa296d435919bc498b3fd1e2acb0029", - "sourceMap": "989:11789:0:-;;;711:9;703:5;;:17;;;;;;;;;;;;;;;;;;989:11789;;;;;;", - "deployedSourceMap": "989:11789:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4136:30;4144:10;4156:9;4136:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;989:11789;1354:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1354:33:0;;;;;;;;;;;;;;;;;;;;;;;1115:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1115:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1115:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1661:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1661:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1661:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6558:339;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6558:339:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4681:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4681:99:0;;;;;;;;;;;;;;;;;;;;;;;7572:343;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7572:343:0;;;;;;;;;;;;;;;;;;;;;;;;;;1057:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1057:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;10648:345;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10648:345:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9364:458;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9364:458:0;;;;;;;;;;;;;;;;;;;;;;;;;;11934:526;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11934:526:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2055:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2055:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11169:758;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11169:758:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1186:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1186:26:0;;;;;;;;;;;;;;;;;;;;;;;12466:149;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12466:149:0;;;;;;;;;;;;;;;;;;;;;;;1265:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1265:29:0;;;;;;;;;;;;;;;;;;;;;;;8448:253;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8448:253:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5648:497;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5648:497:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1580:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1580:37:0;;;;;;;;;;;;;;;;;;;;;;;2299:975;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2299:975:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4790:249;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4790:249:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4790:249:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12645:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12645:131:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6903:184;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6903:184:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5049:264;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5049:264:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;5049:264:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;640:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;640:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;8018:373;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8018:373:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4458:97;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4458:97:0;;;;;;;;;;;;;;;;;;;;;;;5319:275;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5319:275:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1546:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1546:28:0;;;;;;;;;;;;;;;;;;;;;;;1454:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1454:38:0;;;;;;;;;;;;;;;;;;;;;;;7152:187;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7152:187:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4565:106;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4565:106:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9872:589;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9872:589:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8758:259;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8758:259:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2010:39;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2010:39:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;838:147;;8:9:-1;5:2;;;30:1;27;20:12;5:2;838:147:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;1708:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1708:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6151:341;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6151:341:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1354:33;;;;:::o;1115:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1661:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6558:339::-;6633:3;4352:7;:12;4360:3;4352:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4351:20;4347:34;;;4373:8;;;4347:34;6666:3;6652:17;;:10;:17;;;;:40;;;;;6687:5;;;;;;;;;;;6673:19;;:10;:19;;;;6652:40;:70;;;;;6697:7;:19;6705:10;6697:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;6696:26;6652:70;6648:84;;;6724:8;;;6648:84;6770:2;6752:7;6746:21;:26;6742:40;;;6774:8;;;6742:40;6792:55;6809:3;6814:7;:12;6822:3;6814:12;;;;;;;;;;;;;;;:23;;6839:7;6792:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;6792:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6883:7;6857;:12;6865:3;6857:12;;;;;;;;;;;;;;;:23;;:33;;;;;;;;;;;;:::i;:::-;;6558:339;;;:::o;4681:99::-;4727:15;4761:4;:12;;;4754:19;;4681:99;:::o;7572:343::-;786:5;;;;;;;;;;;772:19;;:10;:19;;;:41;;;;808:5;;;;;;;;;;;795:18;;:9;:18;;;772:41;764:50;;;;;;;;7683:22;;7667:13;:38;7663:52;;;7707:8;;;7663:52;7773:4;:12;;;7729:41;7747:22;;7729:13;:17;;:41;;;;:::i;:::-;:56;7725:70;;;7787:8;;;7725:70;7806:63;7826:4;:12;;;7840:13;;7855;7806:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7895:13;7879;:29;;;;7572:343;:::o;1057:23::-;;;;;;;;;;;;;:::o;10648:345::-;4229:5;;;;;;;;;;;4215:19;;:10;:19;;;;:49;;;;;4239:7;:19;4247:10;4239:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;4238:26;4215:49;4211:63;;;4266:8;;;4211:63;10749:41;:39;:41::i;:::-;10740:6;:50;10736:64;;;10792:8;;;10736:64;10844:34;10871:6;10844:22;;:26;;:34;;;;:::i;:::-;10819:22;:59;;;;10888:2;:11;;:19;10900:6;10888:19;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10888:19:0;10917:69;10939:10;10951:2;10955:6;10963:22;;10917:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10648:345;;:::o;9364:458::-;9440:16;9418:10;4352:7;:12;4360:3;4352:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4351:20;4347:34;;;4373:8;;;4347:34;9459:44;9492:10;9459:32;:44::i;:::-;9440:63;;9526:43;9539:7;:19;9547:10;9539:19;;;;;;;;;;;;;;;:29;;;9526:8;:12;;:43;;;;:::i;:::-;9517:6;:52;9513:66;;;9571:8;;;9513:66;9630:41;9664:6;9630:7;:19;9638:10;9630:19;;;;;;;;;;;;;;;:29;;;:33;;:41;;;;:::i;:::-;9598:7;:19;9606:10;9598:19;;;;;;;;;;;;;;;:29;;:73;;;;9698:26;9717:6;9698:14;;:18;;:26;;;;:::i;:::-;9681:14;:43;;;;9734:10;:19;;:27;9754:6;9734:27;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9734:27:0;9771:44;9780:10;9792:6;9800:14;;9771:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9364:458;;;:::o;11934:526::-;12033:7;12052:18;12243:22;12321:14;12387;12073:58;12102:6;:13;12109:5;12102:13;;;;;;;;;;;;;;;:28;;;12073:24;12091:5;12073:17;:24::i;:::-;:28;;:58;;;;:::i;:::-;12052:79;;12268:42;12287:11;;1490:2;12268:10;:18;;:42;;;;;:::i;:::-;12243:67;;12338:39;12357:7;:12;12365:3;12357:12;;;;;;;;;;;;;;;:19;;;12338:14;:18;;:39;;;;:::i;:::-;12321:56;;12404:25;1490:2;12415;:13;12404:6;:10;;:25;;;;:::i;:::-;12387:42;;12447:6;12440:13;;11934:526;;;;;;;;:::o;2055:26::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;11169:758::-;11267:7;11424:18;11710:22;11788:14;11854;11253:3;4352:7;:12;4360:3;4352:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4351:20;4347:34;;;4373:8;;;4347:34;11445:32;11462:14;;11445:4;:12;;;:16;;:32;;;;:::i;:::-;11424:53;;11500:29;11515:13;;11500:10;:14;;:29;;;;:::i;:::-;11487:42;;11552:38;11567:22;;11552:10;:14;;:38;;;;:::i;:::-;11539:51;;11735:42;11754:11;;1490:2;11735:10;:18;;:42;;;;;:::i;:::-;11710:67;;11805:39;11824:7;:12;11832:3;11824:12;;;;;;;;;;;;;;;:19;;;11805:14;:18;;:39;;;;:::i;:::-;11788:56;;11871:25;1490:2;11882;:13;11871:6;:10;;:25;;;;:::i;:::-;11854:42;;11914:6;11907:13;;11169:758;;;;;;;;:::o;1186:26::-;;;;:::o;12466:149::-;12541:7;12567:41;12585:22;;12567:13;;:17;;:41;;;;:::i;:::-;12560:48;;12466:149;:::o;1265:29::-;;;;:::o;8448:253::-;4229:5;;;;;;;;;;;4215:19;;:10;:19;;;;:49;;;;;4239:7;:19;4247:10;4239:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;4238:26;4215:49;4211:63;;;4266:8;;;4211:63;8527:3;4352:7;:12;4360:3;4352:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4351:20;4347:34;;;4373:8;;;4347:34;8556:23;8572:6;8556:11;;:15;;:23;;;;:::i;:::-;8542:11;:37;;;;8611:31;8635:6;8611:7;:12;8619:3;8611:12;;;;;;;;;;;;;;;:19;;;:23;;:31;;;;:::i;:::-;8589:7;:12;8597:3;8589:12;;;;;;;;;;;;;;;:19;;:53;;;;8652:42;8661:3;8666:6;8674:7;:12;8682:3;8674:12;;;;;;;;;;;;;;;:19;;;8652:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4287:1;8448:253;;:::o;5648:497::-;5910:23;;:::i;:::-;4229:5;;;;;;;;;;;4215:19;;:10;:19;;;;:49;;;;;4239:7;:19;4247:10;4239:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;4238:26;4215:49;4211:63;;;4266:8;;;4211:63;5817:7;:12;5825:3;5817:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;5813:33;;;5838:8;;;5813:33;5887:2;5866:10;5860:24;:29;5856:43;;;5891:8;;;5856:43;5962:4;5943:9;:16;;:23;;;;;;;;;;;5994:5;5976:9;:15;;:23;;;;;;;;;;;6032:10;6009:9;:20;;:33;;;;6068:9;6053:7;:12;6061:3;6053:12;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;6087:10;6103:3;6087:20;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;6087:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6117:21;6126:3;6131:6;6117:8;:21::i;:::-;5648:497;;;;;:::o;1580:37::-;;;;:::o;2299:975::-;2721:23;;:::i;:::-;2382:11;;;;;;;;;;;2381:12;2373:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2441:4;2427:11;;:18;;;;;;;;;;;;;;;;;;2463:9;2455:5;;:17;;;;;;;;;;;;;;;;;;2503:12;2482:18;:33;;;;2559:2;2535:13;2529:27;:32;2525:46;;;2563:8;;;2525:46;2614:2;2591:12;2585:26;:31;2581:45;;;2618:8;;;2581:45;2643:13;2636:4;:20;;;;;;;;;;;;:::i;:::-;;2773:4;2754:9;:16;;:23;;;;;;;;;;;2805:4;2787:9;:15;;:22;;;;;;;;;;;2842:12;2819:9;:20;;:35;;;;2886:9;2865:7;:18;2873:9;2865:18;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;2905:10;2921:9;2905:26;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;2905:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2995:18;3011:1;2995:11;;:15;;:18;;;;:::i;:::-;2981:11;:32;;;;3051;3081:1;3051:7;:18;3059:9;3051:18;;;;;;;;;;;;;;;:25;;;:29;;:32;;;;:::i;:::-;3023:7;:18;3031:9;3023:18;;;;;;;;;;;;;;;:25;;:60;;;;3093:49;3102:9;3113:1;3116:7;:18;3124:9;3116:18;;;;;;;;;;;;;;;:25;;;3093:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2299:975;;;:::o;4790:249::-;4841:11;4854:13;4870:26;4899:19;4921:22;4970:4;4977:5;4984:18;5004:11;5017:14;4955:77;;;;;;;;;;;;;4790:249;;;;;:::o;12645:131::-;12728:7;12754:15;12764:1;12767;12754;:9;;:15;;;;;:::i;:::-;12747:22;;12645:131;;;;;:::o;6903:184::-;4229:5;;;;;;;;;;;4215:19;;:10;:19;;;;:49;;;;;4239:7;:19;4247:10;4239:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;4238:26;4215:49;4211:63;;;4266:8;;;4211:63;6990:50;7006:3;7011:7;:12;7019:3;7011:12;;;;;;;;;;;;;;;:18;;;;;;;;;;;;7031:8;6990:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7071:8;7050:7;:12;7058:3;7050:12;;;;;;;;;;;;;;;:18;;;:29;;;;;;;;;;;;;;;;;;6903:184;;:::o;5049:264::-;5136:10;5148:14;5164:17;5183;5210:15;;:::i;:::-;5118:8;4352:7;:12;4360:3;4352:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4351:20;4347:34;;;4373:8;;;4347:34;5228:7;:17;5236:8;5228:17;;;;;;;;;;;;;;;5210:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5261:1;:7;;;5270:1;:8;;;5280:1;:11;;;5293:1;:12;;;5253:53;;;;;;;;;;;5049:264;;;;;;;:::o;640:20::-;;;;;;;;;;;;;:::o;8018:373::-;8118:21;4229:5;;;;;;;;;;;4215:19;;:10;:19;;;;:49;;;;;4239:7;:19;4247:10;4239:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;4238:26;4215:49;4211:63;;;4266:8;;;4211:63;8103:3;4352:7;:12;4360:3;4352:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4351:20;4347:34;;;4373:8;;;4347:34;8142:7;:12;8150:3;8142:12;;;;;;;;;;;;;;;:19;;;8118:43;;8185:13;8175:6;:23;8171:37;;;8200:8;;;8171:37;8231:13;8222:6;:22;8218:167;;;8260:40;8269:3;8274:25;8285:13;8274:6;:10;;:25;;;;:::i;:::-;8260:8;:40::i;:::-;8218:167;;;8331:43;8343:3;8348:25;8366:6;8348:13;:17;;:25;;;;:::i;:::-;8331:11;:43::i;:::-;8218:167;4287:1;8018:373;;;:::o;4458:97::-;4508:4;4531:10;:17;;;;4524:24;;4458:97;:::o;5319:275::-;5385:7;5417:5;5411:22;;;5442:4;5411:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5411:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5411:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5411:37:0;;;;;;;;;;;;;;;;5404:44;;5319:275;;;:::o;1546:28::-;;;;:::o;1454:38::-;1490:2;1454:38;:::o;7152:187::-;4229:5;;;;;;;;;;;4215:19;;:10;:19;;;;:49;;;;;4239:7;:19;4247:10;4239:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;4238:26;4215:49;4211:63;;;4266:8;;;4211:63;7253:2;7235:7;7229:21;:26;7225:40;;;7257:8;;;7225:40;7275:33;7294:4;7300:7;7275:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;7275:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7325:7;7318:4;:14;;;;;;;;;;;;:::i;:::-;;7152:187;:::o;4565:106::-;4623:7;4649:10;4660:3;4649:15;;;;;;;;;;;;;;;;;;;;;;;;;;;4642:22;;4565:106;;;:::o;9872:589::-;9968:16;9946:10;4352:7;:12;4360:3;4352:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4351:20;4347:34;;;4373:8;;;4347:34;9987:56;10025:10;10037:5;9987:37;:56::i;:::-;9968:75;;10066:56;10079:7;:19;10087:10;10079:19;;;;;;;;;;;;;;;:35;;:42;10115:5;10079:42;;;;;;;;;;;;;;;;10066:8;:12;;:56;;;;:::i;:::-;10057:6;:65;10053:79;;;10124:8;;;10053:79;10188:54;10235:6;10188:7;:19;10196:10;10188:19;;;;;;;;;;;;;;;:35;;:42;10224:5;10188:42;;;;;;;;;;;;;;;;:46;;:54;;;;:::i;:::-;10143:7;:19;10151:10;10143:19;;;;;;;;;;;;;;;:35;;:42;10179:5;10143:42;;;;;;;;;;;;;;;:99;;;;10283:40;10316:6;10283;:13;10290:5;10283:13;;;;;;;;;;;;;;;:28;;;:32;;:40;;;;:::i;:::-;10252:6;:13;10259:5;10252:13;;;;;;;;;;;;;;;:28;;:71;;;;10339:5;10333:21;;;10355:10;10367:6;10333:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10333:41:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10333:41:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;10333:41:0;;;;;;;;;;;;;;;;;10384:70;10398:10;10410:6;10418:5;10425:6;:13;10432:5;10425:13;;;;;;;;;;;;;;;:28;;;10384:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9872:589;;;;:::o;8758:259::-;4229:5;;;;;;;;;;;4215:19;;:10;:19;;;;:49;;;;;4239:7;:19;4247:10;4239:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;4238:26;4215:49;4211:63;;;4266:8;;;4211:63;8840:3;4352:7;:12;4360:3;4352:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4351:20;4347:34;;;4373:8;;;4347:34;8869:23;8885:6;8869:11;;:15;;:23;;;;:::i;:::-;8855:11;:37;;;;8924:31;8948:6;8924:7;:12;8932:3;8924:12;;;;;;;;;;;;;;;:19;;;:23;;:31;;;;:::i;:::-;8902:7;:12;8910:3;8902:12;;;;;;;;;;;;;;;:19;;:53;;;;8965:45;8977:3;8982:6;8990:7;:12;8998:3;8990:12;;;;;;;;;;;;;;;:19;;;8965:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4287:1;8758:259;;:::o;2010:39::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;838:147::-;786:5;;;;;;;;;;;772:19;;:10;:19;;;:41;;;;808:5;;;;;;;;;;;795:18;;:9;:18;;;772:41;764:50;;;;;;;;934:1;914:22;;:8;:22;;;;910:69;;;960:8;952:5;;:16;;;;;;;;;;;;;;;;;;910:69;838:147;:::o;1708:27::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;6151:341::-;4229:5;;;;;;;;;;;4215:19;;:10;:19;;;;:49;;;;;4239:7;:19;4247:10;4239:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;4238:26;4215:49;4211:63;;;4266:8;;;4211:63;6300:4;6295:10;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;6295:10:0;;;;;;;;;;;;;;;;6262:43;;;6267:7;:12;6275:3;6267:12;;;;;;;;;;;;;;;:23;;6262:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;;;6258:76;;;6307:27;6324:3;6329:4;6307:16;:27::i;:::-;6258:76;6370:7;6348:29;;:7;:12;6356:3;6348:12;;;;;;;;;;;;;;;:18;;;;;;;;;;;;:29;;;;6344:69;;;6379:34;6400:3;6405:7;6379:20;:34::i;:::-;6344:69;6450:6;6427:7;:12;6435:3;6427:12;;;;;;;;;;;;;;;:19;;;:29;;6423:62;;;6458:27;6473:3;6478:6;6458:14;:27::i;:::-;6423:62;6151:341;;;;:::o;14206:124::-;14268:7;14299:1;14294;:6;;14287:14;;;;;;14322:1;14318;:5;14311:12;;14206:124;;;;:::o;14336:147::-;14398:7;14417:9;14433:1;14429;:5;14417:17;;14456:1;14451;:6;;14444:14;;;;;;14475:1;14468:8;;14336:147;;;;;:::o;14648:377::-;14750:16;14826:18;14931:17;14847:35;14851:9;14879:1;14869:9;:11;14862:2;:19;14847:3;:35::i;:::-;14826:56;;14988:2;14983:1;14952:28;14956:10;14968:11;14952:3;:28::i;:::-;:32;14951:39;;;;;;;;14931:59;;15008:9;15000:18;;14648:377;;;;;;;:::o;13746:161::-;13808:7;13827:9;13843:1;13839;:5;13827:17;;13866:1;13861;:6;:20;;;;13880:1;13875;13871;:5;;;;;;;;:10;13861:20;13854:28;;;;;;13899:1;13892:8;;13746:161;;;;;:::o;13913:287::-;13975:7;14072:9;14088:1;14084;:5;;;;;;;;14072:17;;14192:1;14185:8;;13913:287;;;;;:::o;989:11789::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", - "source": "pragma solidity ^0.4.15;\n\n/**\n * @title Doneth (Doneth)\n * @dev Doneth is a contract that allows shared access to funds\n * in the form of Ether and ERC20 tokens. It is especially relevant\n * to donation based projects. The admins of the contract determine \n * who is a member, and each member gets a number of shares. The \n * number of shares each member has determines how much Ether/ERC20 \n * the member can withdraw from the contract.\n */\n\n/*\n * Ownable\n *\n * Base contract with an owner.\n * Provides onlyOwner modifier, which prevents function from running\n * if it is called by anyone other than the owner.\n */\n\ncontract Ownable {\n address public owner;\n\n function Ownable() public {\n owner = tx.origin;\n }\n\n modifier onlyOwner() {\n require(msg.sender == owner || tx.origin == owner);\n _;\n }\n\n function transferOwnership(address newOwner) onlyOwner public {\n if (newOwner != address(0)) {\n owner = newOwner;\n }\n }\n}\n\ncontract Doneth is Ownable {\n using SafeMath for uint256; \n\n bool public initialized;\n\n // Name of the contract\n string public name;\n\n // Sum of all shares allocated to members\n uint256 public totalShares;\n\n // Sum of all withdrawals done by members\n uint256 public totalWithdrawn;\n\n // Block number of when the contract was created\n uint256 public genesisBlockNumber;\n\n // Number of decimal places for floating point division\n uint256 constant public PRECISION = 18;\n\n // Variables for shared expense allocation\n uint256 public sharedExpense;\n uint256 public sharedExpenseWithdrawn;\n\n // Used to keep track of members\n mapping(address => Member) public members;\n address[] public memberKeys;\n struct Member {\n bool exists;\n bool admin;\n uint256 shares;\n uint256 withdrawn;\n string memberName;\n mapping(address => uint256) tokensWithdrawn;\n }\n\n // Used to keep track of ERC20 tokens used and how much withdrawn\n mapping(address => Token) public tokens;\n address[] public tokenKeys;\n struct Token {\n bool exists;\n uint256 totalWithdrawn;\n }\n\n // constructor() public {\n // genesisBlockNumber = block.number;\n // addMember(tx.origin, 1, true, \"\");\n // }\n\n\n function init(string _contractName, string _founderName) public {\n require(!initialized, \"ALREADY INITIALIZED\");\n initialized = true;\n owner = tx.origin;\n genesisBlockNumber = block.number;\n if (bytes(_contractName).length > 21) revert();\n if (bytes(_founderName).length > 21) revert();\n name = _contractName;\n // addMember(founder, 1, true, _founderName);\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = true;\n newMember.memberName = _founderName;\n\n members[tx.origin] = newMember;\n memberKeys.push(tx.origin);\n // addShare(tx.origin, shares);\n totalShares = totalShares.add(1);\n members[tx.origin].shares = members[tx.origin].shares.add(1);\n AddShare(tx.origin, 1, members[tx.origin].shares);\n // AddShare(tx.origin, 1, members[tx.origin].shares);\n // AddShare(msg.sender, 1, members[tx.origin].shares);\n }\n\n event Deposit(address from, uint value);\n event Withdraw(address from, uint value, uint256 newTotalWithdrawn);\n event TokenWithdraw(address from, uint value, address token, uint amount);\n event AddShare(address who, uint256 addedShares, uint256 newTotalShares);\n event RemoveShare(address who, uint256 removedShares, uint256 newTotalShares);\n event ChangePrivilege(address who, bool oldValue, bool newValue);\n event ChangeContractName(string oldValue, string newValue);\n event ChangeMemberName(address who, string oldValue, string newValue);\n event ChangeSharedExpense(uint256 contractBalance, uint256 oldValue, uint256 newValue);\n event WithdrawSharedExpense(address from, address to, uint value, uint256 newSharedExpenseWithdrawn);\n\n // Fallback function accepts Ether from donators\n function () public payable {\n Deposit(msg.sender, msg.value);\n }\n\n modifier onlyAdmin() { \n if (msg.sender != owner && !members[msg.sender].admin) revert(); \n _;\n }\n\n modifier onlyExisting(address who) { \n if (!members[who].exists) revert(); \n _;\n }\n\n // Series of getter functions for contract data\n function getMemberCount() public constant returns(uint) {\n return memberKeys.length;\n }\n \n function getMemberAtKey(uint key) public constant returns(address) {\n return memberKeys[key];\n }\n \n function getBalance() public constant returns(uint256 balance) {\n return this.balance;\n }\n \n function getContractInfo() public constant returns(string name, address owner, uint256 genesisBlockNumber, uint256 totalShares, uint256 totalWithdrawn) {\n return (string(name), owner, genesisBlockNumber, totalShares, totalWithdrawn);\n }\n \n function returnMember(address _address) public constant onlyExisting(_address) returns(bool admin, uint256 shares, uint256 withdrawn, string memberName) {\n Member memory m = members[_address];\n return (m.admin, m.shares, m.withdrawn, m.memberName);\n }\n\n function checkERC20Balance(address token) public constant returns(uint256) {\n return ERC20(token).balanceOf(address(this));\n // if (!tokens[token].exists && balance > 0) {\n // tokens[token].exists = true;\n // }\n // return balance;\n }\n\n // Function to add members to the contract \n function addMember(address who, uint256 shares, bool admin, string memberName) public onlyAdmin() {\n // Don't allow the same member to be added twice\n if (members[who].exists) revert();\n if (bytes(memberName).length > 21) revert();\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = admin;\n newMember.memberName = memberName;\n\n members[who] = newMember;\n memberKeys.push(who);\n addShare(who, shares);\n }\n\n function updateMember(address who, uint256 shares, bool isAdmin, string name) public onlyAdmin() {\n if (sha3(members[who].memberName) != sha3(name)) changeMemberName(who, name);\n if (members[who].admin != isAdmin) changeAdminPrivilege(who, isAdmin);\n if (members[who].shares != shares) allocateShares(who, shares);\n }\n\n // Only owner, admin or member can change member's name\n function changeMemberName(address who, string newName) public onlyExisting(who) {\n if (msg.sender != who && msg.sender != owner && !members[msg.sender].admin) revert();\n if (bytes(newName).length > 21) revert();\n ChangeMemberName(who, members[who].memberName, newName);\n members[who].memberName = newName;\n }\n\n function changeAdminPrivilege(address who, bool newValue) public onlyAdmin() {\n ChangePrivilege(who, members[who].admin, newValue);\n members[who].admin = newValue; \n }\n\n // Only admins and owners can change the contract name\n function changeContractName(string newName) public onlyAdmin() {\n if (bytes(newName).length > 21) revert();\n ChangeContractName(name, newName);\n name = newName;\n }\n\n // Shared expense allocation allows admins to withdraw an amount to be used for shared\n // expenses. Shared expense allocation subtracts from the total balance of the contract. \n // Only owner can change this amount.\n function changeSharedExpenseAllocation(uint256 newAllocation) public onlyOwner() {\n if (newAllocation < sharedExpenseWithdrawn) revert();\n if (newAllocation.sub(sharedExpenseWithdrawn) > this.balance) revert();\n\n ChangeSharedExpense(this.balance, sharedExpense, newAllocation);\n sharedExpense = newAllocation;\n }\n\n // Set share amount explicitly by calculating difference then adding or removing accordingly\n function allocateShares(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n uint256 currentShares = members[who].shares;\n if (amount == currentShares) revert();\n if (amount > currentShares) {\n addShare(who, amount.sub(currentShares));\n } else {\n removeShare(who, currentShares.sub(amount));\n }\n }\n\n // Increment the number of shares for a member\n function addShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.add(amount);\n members[who].shares = members[who].shares.add(amount);\n AddShare(who, amount, members[who].shares);\n }\n\n // Decrement the number of shares for a member\n function removeShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.sub(amount);\n members[who].shares = members[who].shares.sub(amount);\n RemoveShare(who, amount, members[who].shares);\n }\n\n // Function for a member to withdraw Ether from the contract proportional\n // to the amount of shares they have. Calculates the totalWithdrawableAmount\n // in Ether based on the member's share and the Ether balance of the contract,\n // then subtracts the amount of Ether that the member has already previously\n // withdrawn.\n function withdraw(uint256 amount) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableAmount(msg.sender);\n if (amount > newTotal.sub(members[msg.sender].withdrawn)) revert();\n \n members[msg.sender].withdrawn = members[msg.sender].withdrawn.add(amount);\n totalWithdrawn = totalWithdrawn.add(amount);\n msg.sender.transfer(amount);\n Withdraw(msg.sender, amount, totalWithdrawn);\n }\n\n // Withdrawal function for ERC20 tokens\n function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token);\n if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert();\n\n members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount);\n tokens[token].totalWithdrawn = tokens[token].totalWithdrawn.add(amount);\n ERC20(token).transfer(msg.sender, amount);\n TokenWithdraw(msg.sender, amount, token, tokens[token].totalWithdrawn);\n }\n\n // Withdraw from shared expense allocation. Total withdrawable is calculated as \n // sharedExpense minus sharedExpenseWithdrawn. Only Admin can withdraw from shared expense.\n function withdrawSharedExpense(uint256 amount, address to) public onlyAdmin() {\n if (amount > calculateTotalExpenseWithdrawableAmount()) revert();\n \n sharedExpenseWithdrawn = sharedExpenseWithdrawn.add(amount);\n to.transfer(amount);\n WithdrawSharedExpense(msg.sender, to, amount, sharedExpenseWithdrawn);\n }\n\n // Converts from shares to Eth.\n // Ex: 2 shares, 4 total shares, 40 Eth balance\n // 40 Eth / 4 total shares = 10 eth per share * 2 shares = 20 Eth to cash out\n function calculateTotalWithdrawableAmount(address who) public constant onlyExisting(who) returns (uint256) {\n // Total balance to calculate share from = \n // contract balance + totalWithdrawn - sharedExpense + sharedExpenseWithdrawn\n uint256 balanceSum = this.balance.add(totalWithdrawn);\n balanceSum = balanceSum.sub(sharedExpense);\n balanceSum = balanceSum.add(sharedExpenseWithdrawn);\n \n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 ethPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 ethPPN = ethPerSharePPN.mul(members[who].shares);\n uint256 ethVal = ethPPN.div(10**PRECISION); \n return ethVal;\n }\n\n\n function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) {\n uint256 balanceSum = checkERC20Balance(token).add(tokens[token].totalWithdrawn);\n\n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 tokPPN = tokPerSharePPN.mul(members[who].shares);\n uint256 tokVal = tokPPN.div(10**PRECISION); \n return tokVal;\n }\n\n function calculateTotalExpenseWithdrawableAmount() public constant returns(uint256) {\n return sharedExpense.sub(sharedExpenseWithdrawn);\n }\n\n // Used for testing\n function delegatePercent(uint256 a, uint256 b, uint256 c) public constant returns (uint256) {\n return a.percent(b, c);\n }\n}\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n\n // Using from SO: https://stackoverflow.com/questions/42738640/division-in-ethereum-solidity/42739843#42739843\n // Adapted to use SafeMath and uint256.\n function percent(uint256 numerator, uint256 denominator, uint256 precision) internal constant returns(uint256 quotient) {\n // caution, check safe-to-multiply here\n uint256 _numerator = mul(numerator, 10 ** (precision+1));\n // with rounding of last digit\n uint256 _quotient = (div(_numerator, denominator) + 5) / 10;\n return (_quotient);\n }\n}\n\n", + "metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"genesisBlockNumber\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"name\",\"outputs\":[{\"name\":\"\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"members\",\"outputs\":[{\"name\":\"exists\",\"type\":\"bool\"},{\"name\":\"admin\",\"type\":\"bool\"},{\"name\":\"shares\",\"type\":\"uint256\"},{\"name\":\"withdrawn\",\"type\":\"uint256\"},{\"name\":\"memberName\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"newName\",\"type\":\"string\"}],\"name\":\"changeMemberName\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getBalance\",\"outputs\":[{\"name\":\"balance\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newAllocation\",\"type\":\"uint256\"}],\"name\":\"changeSharedExpenseAllocation\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"initialized\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"to\",\"type\":\"address\"}],\"name\":\"withdrawSharedExpense\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"withdraw\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"token\",\"type\":\"address\"}],\"name\":\"calculateTotalWithdrawableTokenAmount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"}],\"name\":\"calculateTotalWithdrawableAmount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalShares\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"calculateTotalExpenseWithdrawableAmount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"totalWithdrawn\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"addShare\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"shares\",\"type\":\"uint256\"},{\"name\":\"admin\",\"type\":\"bool\"},{\"name\":\"memberName\",\"type\":\"string\"}],\"name\":\"addMember\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"sharedExpenseWithdrawn\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getContractInfo\",\"outputs\":[{\"name\":\"name\",\"type\":\"string\"},{\"name\":\"owner\",\"type\":\"address\"},{\"name\":\"genesisBlockNumber\",\"type\":\"uint256\"},{\"name\":\"totalShares\",\"type\":\"uint256\"},{\"name\":\"totalWithdrawn\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"a\",\"type\":\"uint256\"},{\"name\":\"b\",\"type\":\"uint256\"},{\"name\":\"c\",\"type\":\"uint256\"}],\"name\":\"delegatePercent\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"newValue\",\"type\":\"bool\"}],\"name\":\"changeAdminPrivilege\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"_address\",\"type\":\"address\"}],\"name\":\"returnMember\",\"outputs\":[{\"name\":\"admin\",\"type\":\"bool\"},{\"name\":\"shares\",\"type\":\"uint256\"},{\"name\":\"withdrawn\",\"type\":\"uint256\"},{\"name\":\"memberName\",\"type\":\"string\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"Ownable\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"owner\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"allocateShares\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"getMemberCount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"token\",\"type\":\"address\"}],\"name\":\"checkERC20Balance\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"sharedExpense\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"PRECISION\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newName\",\"type\":\"string\"}],\"name\":\"changeContractName\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"key\",\"type\":\"uint256\"}],\"name\":\"getMemberAtKey\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"amount\",\"type\":\"uint256\"},{\"name\":\"token\",\"type\":\"address\"}],\"name\":\"withdrawToken\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"removeShare\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[],\"name\":\"init\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"tokens\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"newOwner\",\"type\":\"address\"}],\"name\":\"transferOwnership\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"memberKeys\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"who\",\"type\":\"address\"},{\"name\":\"shares\",\"type\":\"uint256\"},{\"name\":\"isAdmin\",\"type\":\"bool\"},{\"name\":\"name\",\"type\":\"string\"}],\"name\":\"updateMember\",\"outputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"}],\"name\":\"Deposit\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newTotalWithdrawn\",\"type\":\"uint256\"}],\"name\":\"Withdraw\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"token\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"TokenWithdraw\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"addedShares\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newTotalShares\",\"type\":\"uint256\"}],\"name\":\"AddShare\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"removedShares\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newTotalShares\",\"type\":\"uint256\"}],\"name\":\"RemoveShare\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"oldValue\",\"type\":\"bool\"},{\"indexed\":false,\"name\":\"newValue\",\"type\":\"bool\"}],\"name\":\"ChangePrivilege\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"oldValue\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"newValue\",\"type\":\"string\"}],\"name\":\"ChangeContractName\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"who\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"oldValue\",\"type\":\"string\"},{\"indexed\":false,\"name\":\"newValue\",\"type\":\"string\"}],\"name\":\"ChangeMemberName\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"contractBalance\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"oldValue\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newValue\",\"type\":\"uint256\"}],\"name\":\"ChangeSharedExpense\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"from\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"to\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"value\",\"type\":\"uint256\"},{\"indexed\":false,\"name\":\"newSharedExpenseWithdrawn\",\"type\":\"uint256\"}],\"name\":\"WithdrawSharedExpense\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{},\"title\":\"Doneth (Doneth)\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol\":\"Doneth\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol\":{\"keccak256\":\"0x3d466a37b9c08a02e90a41af67298e80eafca59c5a67874053bf2e7a0c908670\",\"urls\":[\"bzzr://1e256920e25d44723615897aa284a414988c1e7cee7ac9d6247a20ef19d81b4b\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b50613b45806100206000396000f3006080604052600436106101d8576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630356fe3a1461024557806306fdde031461027057806308ae4b0c146103005780630d6d1437146103e057806312065fe0146104695780631468fc2614610494578063158ef93e146104c157806324e2ca92146104f05780632e1a7d4d1461053d5780632f0ae5131461056a578063389435e8146105e15780633a98ef39146106385780634a914e8c146106635780634b3197131461068e57806350f4f9f8146106b95780635c60da1b146107065780635ea409831461075d5780636e2fd470146107fc5780637cc1f867146108275780637d22f431146108ff57806380056b5b1461095457806385dcbb5a146109a35780638afc360514610a785780638da5cb5b14610a8f5780638e2a647014610ae6578063997072f714610b335780639b3bc6fb14610b5e5780639d21328f14610bb5578063aaf5eb6814610be0578063ad3cd88314610c0b578063aec8fae814610c74578063be4b177214610ce1578063c06474e014610d2e578063e1c7392a14610d7b578063e486033914610d92578063f2fde38b14610de9578063f504b08914610e2c578063fac2548b14610e99575b7fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c3334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1005b34801561025157600080fd5b5061025a610f38565b6040518082815260200191505060405180910390f35b34801561027c57600080fd5b50610285610f3e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102c55780820151818401526020810190506102aa565b50505050905090810190601f1680156102f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561030c57600080fd5b50610341600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fdc565b60405180861515151581526020018515151515815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156103a1578082015181840152602081019050610386565b50505050905090810190601f1680156103ce5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103ec57600080fd5b50610467600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506110c4565b005b34801561047557600080fd5b5061047e611413565b6040518082815260200191505060405180910390f35b3480156104a057600080fd5b506104bf60048036038101908080359060200190929190505050611432565b005b3480156104cd57600080fd5b506104d6611597565b604051808215151515815260200191505060405180910390f35b3480156104fc57600080fd5b5061053b60048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115aa565b005b34801561054957600080fd5b5061056860048036038101908080359060200190929190505050611782565b005b34801561057657600080fd5b506105cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119c3565b6040518082815260200191505060405180910390f35b3480156105ed57600080fd5b50610622600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611abe565b6040518082815260200191505060405180910390f35b34801561064457600080fd5b5061064d611c15565b6040518082815260200191505060405180910390f35b34801561066f57600080fd5b50610678611c1b565b6040518082815260200191505060405180910390f35b34801561069a57600080fd5b506106a3611c39565b6040518082815260200191505060405180910390f35b3480156106c557600080fd5b50610704600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c3f565b005b34801561071257600080fd5b5061071b611ec0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561076957600080fd5b506107fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803515159060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611ee5565b005b34801561080857600080fd5b50610811612160565b6040518082815260200191505060405180910390f35b34801561083357600080fd5b5061083c612166565b60405180806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001858152602001848152602001838152602001828103825287818151815260200191508051906020019080838360005b838110156108c05780820151818401526020810190506108a5565b50505050905090810190601f1680156108ed5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561090b57600080fd5b5061093e600480360381019080803590602001909291908035906020019092919080359060200190929190505050612187565b6040518082815260200191505060405180910390f35b34801561096057600080fd5b506109a1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506121a7565b005b3480156109af57600080fd5b506109e4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612383565b604051808515151515815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a3a578082015181840152602081019050610a1f565b50505050905090810190601f168015610a675780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b348015610a8457600080fd5b50610a8d61254f565b005b348015610a9b57600080fd5b50610aa4612592565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610af257600080fd5b50610b31600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506125b8565b005b348015610b3f57600080fd5b50610b48612769565b6040518082815260200191505060405180910390f35b348015610b6a57600080fd5b50610b9f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612776565b6040518082815260200191505060405180910390f35b348015610bc157600080fd5b50610bca612855565b6040518082815260200191505060405180910390f35b348015610bec57600080fd5b50610bf561285b565b6040518082815260200191505060405180910390f35b348015610c1757600080fd5b50610c72600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050612860565b005b348015610c8057600080fd5b50610c9f60048036038101908080359060200190929190505050612a65565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ced57600080fd5b50610d2c60048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612aa8565b005b348015610d3a57600080fd5b50610d79600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f25565b005b348015610d8757600080fd5b50610d906131a6565b005b348015610d9e57600080fd5b50610dd3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506134d9565b6040518082815260200191505060405180910390f35b348015610df557600080fd5b50610e2a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506134f1565b005b348015610e3857600080fd5b50610e5760048036038101908080359060200190929190505050613620565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ea557600080fd5b50610f36600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803515159060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061365e565b005b60055481565b60028054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fd45780601f10610fa957610100808354040283529160200191610fd4565b820191906000526020600020905b815481529060010190602001808311610fb757829003601f168201915b505050505081565b60086020528060005260406000206000915090508060000160009054906101000a900460ff16908060000160019054906101000a900460ff1690806001015490806002015490806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110ba5780601f1061108f576101008083540402835291602001916110ba565b820191906000526020600020905b81548152906001019060200180831161109d57829003601f168201915b5050505050905085565b81600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561112057600080fd5b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156111aa5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b80156112035750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561120d57600080fd5b60158251111561121c57600080fd5b7f154ad3f744d3641de12f5e012773b0126c47d1ffda727e5a61a2e6db8bb2cb5583600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030184604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001806020018381038352858181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156113405780601f1061131557610100808354040283529160200191611340565b820191906000526020600020905b81548152906001019060200180831161132357829003601f168201915b5050838103825284818151815260200191508051906020019080838360005b8381101561137a57808201518184015260208101905061135f565b50505050905090810190601f1680156113a75780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a181600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301908051906020019061140d9291906139c0565b50505050565b60003073ffffffffffffffffffffffffffffffffffffffff1631905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806114db5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16145b15156114e657600080fd5b6007548110156114f557600080fd5b3073ffffffffffffffffffffffffffffffffffffffff1631611522600754836138fd90919063ffffffff16565b111561152d57600080fd5b7f5b3ea9617f529540e1c3e0beb0e01c060418c2d1fe48d369afe3d47beaa037cf3073ffffffffffffffffffffffffffffffffffffffff16316006548360405180848152602001838152602001828152602001935050505060405180910390a18060068190555050565b600160149054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156116555750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561165f57600080fd5b611667611c1b565b82111561167357600080fd5b6116888260075461391690919063ffffffff16565b6007819055508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156116d4573d6000803e3d6000fd5b507f223162e752821eb7bd44782f73723defb6e3a087a9afc4d3d4af13783f7b6aca338284600754604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200182815260200194505050505060405180910390a15050565b600033600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615156117e057600080fd5b6117e933611abe565b9150611840600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154836138fd90919063ffffffff16565b83111561184c57600080fd5b6118a183600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002015461391690919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201819055506118fc8360045461391690919063ffffffff16565b6004819055503373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015611948573d6000803e3d6000fd5b507ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5683384600454604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6000806000806000611a25600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a1788612776565b61391690919063ffffffff16565b9350611a3f6003546012866139349092919063ffffffff16565b9250611a96600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548461397290919063ffffffff16565b9150611aaf6012600a0a836139a590919063ffffffff16565b90508094505050505092915050565b600080600080600085600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515611b2257600080fd5b611b4e6004543073ffffffffffffffffffffffffffffffffffffffff163161391690919063ffffffff16565b9450611b65600654866138fd90919063ffffffff16565b9450611b7c6007548661391690919063ffffffff16565b9450611b966003546012876139349092919063ffffffff16565b9350611bed600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548561397290919063ffffffff16565b9250611c066012600a0a846139a590919063ffffffff16565b91508195505050505050919050565b60035481565b6000611c346007546006546138fd90919063ffffffff16565b905090565b60045481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611cea5750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15611cf457600080fd5b81600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515611d5057600080fd5b611d658260035461391690919063ffffffff16565b600381905550611dc082600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015461391690919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a8383600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611eed613a40565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611f985750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15611fa257600080fd5b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615611ffc57600080fd5b60158251111561200b57600080fd5b60018160000190151590811515815250508281602001901515908115158152505081816080018190525080600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548160ff021916908315150217905550604082015181600101556060820151816002015560808201518160030190805190602001906120e5929190613a74565b5090505060098590806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506121598585611c3f565b5050505050565b60075481565b60606000806000808484848484849450945094509450945094509091929394565b600061219e8383866139349092919063ffffffff16565b90509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156122525750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561225c57600080fd5b7eb763075216b1778fecb2719c6d2040ed88fdbe6092a9597de5df9d175c968a82600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff1683604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018315151515815260200182151515158152602001935050505060405180910390a180600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160016101000a81548160ff0219169083151502179055505050565b60008060006060612392613a40565b85600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615156123ee57600080fd5b600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060a060405190810160405290816000820160009054906101000a900460ff161515151581526020016000820160019054906101000a900460ff161515151581526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561251c5780601f106124f15761010080835404028352916020019161251c565b820191906000526020600020905b8154815290600101906020018083116124ff57829003601f168201915b50505050508152505091508160200151826040015183606001518460800151809050955095509550955050509193509193565b32600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156126655750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561266f57600080fd5b82600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615156126cb57600080fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015491508183141561271d57600080fd5b81831115612746576127418461273c84866138fd90919063ffffffff16565b611c3f565b612763565b6127628461275d85856138fd90919063ffffffff16565b612f25565b5b50505050565b6000600980549050905090565b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561281357600080fd5b505af1158015612827573d6000803e3d6000fd5b505050506040513d602081101561283d57600080fd5b81019080805190602001909291905050509050919050565b60065481565b601281565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561290b5750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561291557600080fd5b60158151111561292457600080fd5b7f7244709f741ec5f1d637fd5a891de308c779d1023c0f3128595bb88bf571ef886002826040518080602001806020018381038352858181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156129d55780601f106129aa576101008083540402835291602001916129d5565b820191906000526020600020905b8154815290600101906020018083116129b857829003601f168201915b5050838103825284818151815260200191508051906020019080838360005b83811015612a0f5780820151818401526020810190506129f4565b50505050905090810190601f168015612a3c5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a18060029080519060200190612a619291906139c0565b5050565b6000600982815481101515612a7657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515612b0657600080fd5b612b1033846119c3565b9150612ba4600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836138fd90919063ffffffff16565b841115612bb057600080fd5b612c4284600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461391690919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612d1784600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461391690919063ffffffff16565b600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612dfd57600080fd5b505af1158015612e11573d6000803e3d6000fd5b505050506040513d6020811015612e2757600080fd5b8101908080519060200190929190505050507fffdaa1b8f229c4f9a0c79b712224a2ad8d3aa3c483c23a125f4b9c179870938d338585600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200194505050505060405180910390a150505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015612fd05750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15612fda57600080fd5b81600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561303657600080fd5b61304b826003546138fd90919063ffffffff16565b6003819055506130a682600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546138fd90919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f67d4e98c6b70fdfbb7305797bbb30889a736b9773c74f9557683ffacbd22d5a88383600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6131ae613a40565b600160149054906101000a900460ff161515156131ca57600080fd5b60018060146101000a81548160ff02191690831515021790555032600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550436005819055506001816000019015159081151581525050600181602001901515908115158152505080600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548160ff021916908315150217905550604082015181600101556060820151816002015560808201518160030190805190602001906132fe929190613a74565b5090505060093290806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061337e600160035461391690919063ffffffff16565b6003819055506133da6001600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015461391690919063ffffffff16565b600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a326001600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a150565b600a6020528060005260406000206000915090505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061359a5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16145b15156135a557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561361d5780600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60098181548110151561362f57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156137095750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561371357600080fd5b806040518082805190602001908083835b6020831015156137495780518252602082019150602081019050602083039250613724565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160405180828054600181600116156101000203166002900480156138175780601f106137f5576101008083540402835291820191613817565b820191906000526020600020905b815481529060010190602001808311613803575b505091505060405180910390206000191614151561383a5761383984826110c4565b5b811515600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff1615151415156138a1576138a084836121a7565b5b82600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541415156138f7576138f684846125b8565b5b50505050565b600082821115151561390b57fe5b818303905092915050565b600080828401905083811015151561392a57fe5b8091505092915050565b60008060006139498660018601600a0a613972565b9150600a600561395984886139a5565b0181151561396357fe5b04905080925050509392505050565b60008082840290506000841480613993575082848281151561399057fe5b04145b151561399b57fe5b8091505092915050565b60008082848115156139b357fe5b0490508091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613a0157805160ff1916838001178555613a2f565b82800160010185558215613a2f579182015b82811115613a2e578251825591602001919060010190613a13565b5b509050613a3c9190613af4565b5090565b60a0604051908101604052806000151581526020016000151581526020016000815260200160008152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613ab557805160ff1916838001178555613ae3565b82800160010185558215613ae3579182015b82811115613ae2578251825591602001919060010190613ac7565b5b509050613af09190613af4565b5090565b613b1691905b80821115613b12576000816000905550600101613afa565b5090565b905600a165627a7a72305820979d5954ac7be6fcf0f0093ff6dc44d30346615c843c0782a80d2b5a5ced809a0029", + "deployedBytecode": "0x6080604052600436106101d8576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680630356fe3a1461024557806306fdde031461027057806308ae4b0c146103005780630d6d1437146103e057806312065fe0146104695780631468fc2614610494578063158ef93e146104c157806324e2ca92146104f05780632e1a7d4d1461053d5780632f0ae5131461056a578063389435e8146105e15780633a98ef39146106385780634a914e8c146106635780634b3197131461068e57806350f4f9f8146106b95780635c60da1b146107065780635ea409831461075d5780636e2fd470146107fc5780637cc1f867146108275780637d22f431146108ff57806380056b5b1461095457806385dcbb5a146109a35780638afc360514610a785780638da5cb5b14610a8f5780638e2a647014610ae6578063997072f714610b335780639b3bc6fb14610b5e5780639d21328f14610bb5578063aaf5eb6814610be0578063ad3cd88314610c0b578063aec8fae814610c74578063be4b177214610ce1578063c06474e014610d2e578063e1c7392a14610d7b578063e486033914610d92578063f2fde38b14610de9578063f504b08914610e2c578063fac2548b14610e99575b7fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c3334604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1005b34801561025157600080fd5b5061025a610f38565b6040518082815260200191505060405180910390f35b34801561027c57600080fd5b50610285610f3e565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102c55780820151818401526020810190506102aa565b50505050905090810190601f1680156102f25780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561030c57600080fd5b50610341600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610fdc565b60405180861515151581526020018515151515815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b838110156103a1578082015181840152602081019050610386565b50505050905090810190601f1680156103ce5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b3480156103ec57600080fd5b50610467600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f01602080910402602001604051908101604052809392919081815260200183838082843782019150505050505091929192905050506110c4565b005b34801561047557600080fd5b5061047e611413565b6040518082815260200191505060405180910390f35b3480156104a057600080fd5b506104bf60048036038101908080359060200190929190505050611432565b005b3480156104cd57600080fd5b506104d6611597565b604051808215151515815260200191505060405180910390f35b3480156104fc57600080fd5b5061053b60048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506115aa565b005b34801561054957600080fd5b5061056860048036038101908080359060200190929190505050611782565b005b34801561057657600080fd5b506105cb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119c3565b6040518082815260200191505060405180910390f35b3480156105ed57600080fd5b50610622600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611abe565b6040518082815260200191505060405180910390f35b34801561064457600080fd5b5061064d611c15565b6040518082815260200191505060405180910390f35b34801561066f57600080fd5b50610678611c1b565b6040518082815260200191505060405180910390f35b34801561069a57600080fd5b506106a3611c39565b6040518082815260200191505060405180910390f35b3480156106c557600080fd5b50610704600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611c3f565b005b34801561071257600080fd5b5061071b611ec0565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561076957600080fd5b506107fa600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803515159060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050611ee5565b005b34801561080857600080fd5b50610811612160565b6040518082815260200191505060405180910390f35b34801561083357600080fd5b5061083c612166565b60405180806020018673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001858152602001848152602001838152602001828103825287818151815260200191508051906020019080838360005b838110156108c05780820151818401526020810190506108a5565b50505050905090810190601f1680156108ed5780820380516001836020036101000a031916815260200191505b50965050505050505060405180910390f35b34801561090b57600080fd5b5061093e600480360381019080803590602001909291908035906020019092919080359060200190929190505050612187565b6040518082815260200191505060405180910390f35b34801561096057600080fd5b506109a1600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291905050506121a7565b005b3480156109af57600080fd5b506109e4600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612383565b604051808515151515815260200184815260200183815260200180602001828103825283818151815260200191508051906020019080838360005b83811015610a3a578082015181840152602081019050610a1f565b50505050905090810190601f168015610a675780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b348015610a8457600080fd5b50610a8d61254f565b005b348015610a9b57600080fd5b50610aa4612592565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610af257600080fd5b50610b31600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506125b8565b005b348015610b3f57600080fd5b50610b48612769565b6040518082815260200191505060405180910390f35b348015610b6a57600080fd5b50610b9f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612776565b6040518082815260200191505060405180910390f35b348015610bc157600080fd5b50610bca612855565b6040518082815260200191505060405180910390f35b348015610bec57600080fd5b50610bf561285b565b6040518082815260200191505060405180910390f35b348015610c1757600080fd5b50610c72600480360381019080803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050612860565b005b348015610c8057600080fd5b50610c9f60048036038101908080359060200190929190505050612a65565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ced57600080fd5b50610d2c60048036038101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612aa8565b005b348015610d3a57600080fd5b50610d79600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050612f25565b005b348015610d8757600080fd5b50610d906131a6565b005b348015610d9e57600080fd5b50610dd3600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506134d9565b6040518082815260200191505060405180910390f35b348015610df557600080fd5b50610e2a600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506134f1565b005b348015610e3857600080fd5b50610e5760048036038101908080359060200190929190505050613620565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610ea557600080fd5b50610f36600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803515159060200190929190803590602001908201803590602001908080601f016020809104026020016040519081016040528093929190818152602001838380828437820191505050505050919291929050505061365e565b005b60055481565b60028054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610fd45780601f10610fa957610100808354040283529160200191610fd4565b820191906000526020600020905b815481529060010190602001808311610fb757829003601f168201915b505050505081565b60086020528060005260406000206000915090508060000160009054906101000a900460ff16908060000160019054906101000a900460ff1690806001015490806002015490806003018054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156110ba5780601f1061108f576101008083540402835291602001916110ba565b820191906000526020600020905b81548152906001019060200180831161109d57829003601f168201915b5050505050905085565b81600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561112057600080fd5b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156111aa5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614155b80156112035750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561120d57600080fd5b60158251111561121c57600080fd5b7f154ad3f744d3641de12f5e012773b0126c47d1ffda727e5a61a2e6db8bb2cb5583600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030184604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200180602001806020018381038352858181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156113405780601f1061131557610100808354040283529160200191611340565b820191906000526020600020905b81548152906001019060200180831161132357829003601f168201915b5050838103825284818151815260200191508051906020019080838360005b8381101561137a57808201518184015260208101905061135f565b50505050905090810190601f1680156113a75780820380516001836020036101000a031916815260200191505b509550505050505060405180910390a181600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600301908051906020019061140d9291906139c0565b50505050565b60003073ffffffffffffffffffffffffffffffffffffffff1631905090565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614806114db5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16145b15156114e657600080fd5b6007548110156114f557600080fd5b3073ffffffffffffffffffffffffffffffffffffffff1631611522600754836138fd90919063ffffffff16565b111561152d57600080fd5b7f5b3ea9617f529540e1c3e0beb0e01c060418c2d1fe48d369afe3d47beaa037cf3073ffffffffffffffffffffffffffffffffffffffff16316006548360405180848152602001838152602001828152602001935050505060405180910390a18060068190555050565b600160149054906101000a900460ff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156116555750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561165f57600080fd5b611667611c1b565b82111561167357600080fd5b6116888260075461391690919063ffffffff16565b6007819055508073ffffffffffffffffffffffffffffffffffffffff166108fc839081150290604051600060405180830381858888f193505050501580156116d4573d6000803e3d6000fd5b507f223162e752821eb7bd44782f73723defb6e3a087a9afc4d3d4af13783f7b6aca338284600754604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200183815260200182815260200194505050505060405180910390a15050565b600033600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615156117e057600080fd5b6117e933611abe565b9150611840600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060020154836138fd90919063ffffffff16565b83111561184c57600080fd5b6118a183600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206002015461391690919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600201819055506118fc8360045461391690919063ffffffff16565b6004819055503373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f19350505050158015611948573d6000803e3d6000fd5b507ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b5683384600454604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6000806000806000611a25600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611a1788612776565b61391690919063ffffffff16565b9350611a3f6003546012866139349092919063ffffffff16565b9250611a96600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548461397290919063ffffffff16565b9150611aaf6012600a0a836139a590919063ffffffff16565b90508094505050505092915050565b600080600080600085600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515611b2257600080fd5b611b4e6004543073ffffffffffffffffffffffffffffffffffffffff163161391690919063ffffffff16565b9450611b65600654866138fd90919063ffffffff16565b9450611b7c6007548661391690919063ffffffff16565b9450611b966003546012876139349092919063ffffffff16565b9350611bed600860008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101548561397290919063ffffffff16565b9250611c066012600a0a846139a590919063ffffffff16565b91508195505050505050919050565b60035481565b6000611c346007546006546138fd90919063ffffffff16565b905090565b60045481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611cea5750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15611cf457600080fd5b81600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515611d5057600080fd5b611d658260035461391690919063ffffffff16565b600381905550611dc082600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015461391690919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a8383600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611eed613a40565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015611f985750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15611fa257600080fd5b600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615611ffc57600080fd5b60158251111561200b57600080fd5b60018160000190151590811515815250508281602001901515908115158152505081816080018190525080600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548160ff021916908315150217905550604082015181600101556060820151816002015560808201518160030190805190602001906120e5929190613a74565b5090505060098590806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550506121598585611c3f565b5050505050565b60075481565b60606000806000808484848484849450945094509450945094509091929394565b600061219e8383866139349092919063ffffffff16565b90509392505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156122525750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561225c57600080fd5b7eb763075216b1778fecb2719c6d2040ed88fdbe6092a9597de5df9d175c968a82600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff1683604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018315151515815260200182151515158152602001935050505060405180910390a180600860008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160016101000a81548160ff0219169083151502179055505050565b60008060006060612392613a40565b85600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615156123ee57600080fd5b600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060a060405190810160405290816000820160009054906101000a900460ff161515151581526020016000820160019054906101000a900460ff161515151581526020016001820154815260200160028201548152602001600382018054600181600116156101000203166002900480601f01602080910402602001604051908101604052809291908181526020018280546001816001161561010002031660029004801561251c5780601f106124f15761010080835404028352916020019161251c565b820191906000526020600020905b8154815290600101906020018083116124ff57829003601f168201915b50505050508152505091508160200151826040015183606001518460800151809050955095509550955050509193509193565b32600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156126655750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561266f57600080fd5b82600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff1615156126cb57600080fd5b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015491508183141561271d57600080fd5b81831115612746576127418461273c84866138fd90919063ffffffff16565b611c3f565b612763565b6127628461275d85856138fd90919063ffffffff16565b612f25565b5b50505050565b6000600980549050905090565b60008173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561281357600080fd5b505af1158015612827573d6000803e3d6000fd5b505050506040513d602081101561283d57600080fd5b81019080805190602001909291905050509050919050565b60065481565b601281565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415801561290b5750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561291557600080fd5b60158151111561292457600080fd5b7f7244709f741ec5f1d637fd5a891de308c779d1023c0f3128595bb88bf571ef886002826040518080602001806020018381038352858181546001816001161561010002031660029004815260200191508054600181600116156101000203166002900480156129d55780601f106129aa576101008083540402835291602001916129d5565b820191906000526020600020905b8154815290600101906020018083116129b857829003601f168201915b5050838103825284818151815260200191508051906020019080838360005b83811015612a0f5780820151818401526020810190506129f4565b50505050905090810190601f168015612a3c5780820380516001836020036101000a031916815260200191505b5094505050505060405180910390a18060029080519060200190612a619291906139c0565b5050565b6000600982815481101515612a7657fe5b9060005260206000200160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600033600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff161515612b0657600080fd5b612b1033846119c3565b9150612ba4600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054836138fd90919063ffffffff16565b841115612bb057600080fd5b612c4284600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461391690919063ffffffff16565b600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612d1784600a60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461391690919063ffffffff16565b600a60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33866040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015612dfd57600080fd5b505af1158015612e11573d6000803e3d6000fd5b505050506040513d6020811015612e2757600080fd5b8101908080519060200190929190505050507fffdaa1b8f229c4f9a0c79b712224a2ad8d3aa3c483c23a125f4b9c179870938d338585600a60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018481526020018373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200182815260200194505050505060405180910390a150505050565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614158015612fd05750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b15612fda57600080fd5b81600860008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160009054906101000a900460ff16151561303657600080fd5b61304b826003546138fd90919063ffffffff16565b6003819055506130a682600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101546138fd90919063ffffffff16565b600860008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f67d4e98c6b70fdfbb7305797bbb30889a736b9773c74f9557683ffacbd22d5a88383600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a1505050565b6131ae613a40565b600160149054906101000a900460ff161515156131ca57600080fd5b60018060146101000a81548160ff02191690831515021790555032600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550436005819055506001816000019015159081151581525050600181602001901515908115158152505080600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008201518160000160006101000a81548160ff02191690831515021790555060208201518160000160016101000a81548160ff021916908315150217905550604082015181600101556060820151816002015560808201518160030190805190602001906132fe929190613a74565b5090505060093290806001815401808255809150509060018203906000526020600020016000909192909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505061337e600160035461391690919063ffffffff16565b6003819055506133da6001600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206001015461391690919063ffffffff16565b600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101819055507f0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a326001600860003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060010154604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001838152602001828152602001935050505060405180910390a150565b600a6020528060005260406000206000915090505481565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061359a5750600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163273ffffffffffffffffffffffffffffffffffffffff16145b15156135a557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151561361d5780600160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b50565b60098181548110151561362f57fe5b906000526020600020016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141580156137095750600860003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff16155b1561371357600080fd5b806040518082805190602001908083835b6020831015156137495780518252602082019150602081019050602083039250613724565b6001836020036101000a038019825116818451168082178552505050505050905001915050604051809103902060001916600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160405180828054600181600116156101000203166002900480156138175780601f106137f5576101008083540402835291820191613817565b820191906000526020600020905b815481529060010190602001808311613803575b505091505060405180910390206000191614151561383a5761383984826110c4565b5b811515600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000160019054906101000a900460ff1615151415156138a1576138a084836121a7565b5b82600860008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101541415156138f7576138f684846125b8565b5b50505050565b600082821115151561390b57fe5b818303905092915050565b600080828401905083811015151561392a57fe5b8091505092915050565b60008060006139498660018601600a0a613972565b9150600a600561395984886139a5565b0181151561396357fe5b04905080925050509392505050565b60008082840290506000841480613993575082848281151561399057fe5b04145b151561399b57fe5b8091505092915050565b60008082848115156139b357fe5b0490508091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613a0157805160ff1916838001178555613a2f565b82800160010185558215613a2f579182015b82811115613a2e578251825591602001919060010190613a13565b5b509050613a3c9190613af4565b5090565b60a0604051908101604052806000151581526020016000151581526020016000815260200160008152602001606081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10613ab557805160ff1916838001178555613ae3565b82800160010185558215613ae3579182015b82811115613ae2578251825591602001919060010190613ac7565b5b509050613af09190613af4565b5090565b613b1691905b80821115613b12576000816000905550600101613afa565b5090565b905600a165627a7a72305820979d5954ac7be6fcf0f0093ff6dc44d30346615c843c0782a80d2b5a5ced809a0029", + "sourceMap": "444:11313:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;444:11313:0;;;;;;;", + "deployedSourceMap": "444:11313:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3313:30;3321:10;3333:9;3313:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;444:11313;1240:33;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1240:33:0;;;;;;;;;;;;;;;;;;;;;;;1001:18;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1001:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1001:18:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1547:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1547:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;1547:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5596:339;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5596:339:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3858:99;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3858:99:0;;;;;;;;;;;;;;;;;;;;;;;6610:343;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6610:343:0;;;;;;;;;;;;;;;;;;;;;;;;;;943:23;;8:9:-1;5:2;;;30:1;27;20:12;5:2;943:23:0;;;;;;;;;;;;;;;;;;;;;;;;;;;9642:345;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9642:345:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8402:458;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8402:458:0;;;;;;;;;;;;;;;;;;;;;;;;;;10928:511;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10928:511:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10163:758;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10163:758:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1072:26;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1072:26:0;;;;;;;;;;;;;;;;;;;;;;;11445:149;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11445:149:0;;;;;;;;;;;;;;;;;;;;;;;1151:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1151:29:0;;;;;;;;;;;;;;;;;;;;;;;7486:253;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7486:253:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;467:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;467:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;4686:497;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4686:497:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1466:37;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1466:37:0;;;;;;;;;;;;;;;;;;;;;;;3967:249;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3967:249:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;3967:249:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11624:131;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11624:131:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5941:184;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5941:184:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4226:264;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4226:264:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;4226:264:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;584:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;584:60:0;;;;;;557:20;;8:9:-1;5:2;;;30:1;27;20:12;5:2;557:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;7056:373;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7056:373:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3635:97;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3635:97:0;;;;;;;;;;;;;;;;;;;;;;;4496:136;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4496:136:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1432:28;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1432:28:0;;;;;;;;;;;;;;;;;;;;;;;1340:38;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1340:38:0;;;;;;;;;;;;;;;;;;;;;;;6190:187;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6190:187:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3742:106;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3742:106:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8911:544;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8911:544:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7796:259;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7796:259:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1944:507;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1944:507:0;;;;;;1896:41;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1896:41:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;755:147;;8:9:-1;5:2;;;30:1;27;20:12;5:2;755:147:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;1594:27;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1594:27:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5189:341;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5189:341:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1240:33;;;;:::o;1001:18::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;1547:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5596:339::-;5671:3;3529:7;:12;3537:3;3529:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;3528:20;3524:34;;;3550:8;;;3524:34;5704:3;5690:17;;:10;:17;;;;:40;;;;;5725:5;;;;;;;;;;;5711:19;;:10;:19;;;;5690:40;:70;;;;;5735:7;:19;5743:10;5735:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;5734:26;5690:70;5686:84;;;5762:8;;;5686:84;5808:2;5790:7;5784:21;:26;5780:40;;;5812:8;;;5780:40;5830:55;5847:3;5852:7;:12;5860:3;5852:12;;;;;;;;;;;;;;;:23;;5877:7;5830:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;5830:55:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5921:7;5895;:12;5903:3;5895:12;;;;;;;;;;;;;;;:23;;:33;;;;;;;;;;;;:::i;:::-;;5596:339;;;:::o;3858:99::-;3904:15;3938:4;:12;;;3931:19;;3858:99;:::o;6610:343::-;703:5;;;;;;;;;;;689:19;;:10;:19;;;:41;;;;725:5;;;;;;;;;;;712:18;;:9;:18;;;689:41;681:50;;;;;;;;6721:22;;6705:13;:38;6701:52;;;6745:8;;;6701:52;6811:4;:12;;;6767:41;6785:22;;6767:13;:17;;:41;;;;:::i;:::-;:56;6763:70;;;6825:8;;;6763:70;6844:63;6864:4;:12;;;6878:13;;6893;6844:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6933:13;6917;:29;;;;6610:343;:::o;943:23::-;;;;;;;;;;;;;:::o;9642:345::-;3406:5;;;;;;;;;;;3392:19;;:10;:19;;;;:49;;;;;3416:7;:19;3424:10;3416:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;3415:26;3392:49;3388:63;;;3443:8;;;3388:63;9743:41;:39;:41::i;:::-;9734:6;:50;9730:64;;;9786:8;;;9730:64;9838:34;9865:6;9838:22;;:26;;:34;;;;:::i;:::-;9813:22;:59;;;;9882:2;:11;;:19;9894:6;9882:19;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9882:19:0;9911:69;9933:10;9945:2;9949:6;9957:22;;9911:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9642:345;;:::o;8402:458::-;8478:16;8456:10;3529:7;:12;3537:3;3529:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;3528:20;3524:34;;;3550:8;;;3524:34;8497:44;8530:10;8497:32;:44::i;:::-;8478:63;;8564:43;8577:7;:19;8585:10;8577:19;;;;;;;;;;;;;;;:29;;;8564:8;:12;;:43;;;;:::i;:::-;8555:6;:52;8551:66;;;8609:8;;;8551:66;8668:41;8702:6;8668:7;:19;8676:10;8668:19;;;;;;;;;;;;;;;:29;;;:33;;:41;;;;:::i;:::-;8636:7;:19;8644:10;8636:19;;;;;;;;;;;;;;;:29;;:73;;;;8736:26;8755:6;8736:14;;:18;;:26;;;;:::i;:::-;8719:14;:43;;;;8772:10;:19;;:27;8792:6;8772:27;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;8772:27:0;8809:44;8818:10;8830:6;8838:14;;8809:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8402:458;;;:::o;10928:511::-;11027:7;11046:18;11222:22;11300:14;11366;11067:43;11096:6;:13;11103:5;11096:13;;;;;;;;;;;;;;;;11067:24;11085:5;11067:17;:24::i;:::-;:28;;:43;;;;:::i;:::-;11046:64;;11247:42;11266:11;;1376:2;11247:10;:18;;:42;;;;;:::i;:::-;11222:67;;11317:39;11336:7;:12;11344:3;11336:12;;;;;;;;;;;;;;;:19;;;11317:14;:18;;:39;;;;:::i;:::-;11300:56;;11383:25;1376:2;11394;:13;11383:6;:10;;:25;;;;:::i;:::-;11366:42;;11426:6;11419:13;;10928:511;;;;;;;;:::o;10163:758::-;10261:7;10418:18;10704:22;10782:14;10848;10247:3;3529:7;:12;3537:3;3529:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;3528:20;3524:34;;;3550:8;;;3524:34;10439:32;10456:14;;10439:4;:12;;;:16;;:32;;;;:::i;:::-;10418:53;;10494:29;10509:13;;10494:10;:14;;:29;;;;:::i;:::-;10481:42;;10546:38;10561:22;;10546:10;:14;;:38;;;;:::i;:::-;10533:51;;10729:42;10748:11;;1376:2;10729:10;:18;;:42;;;;;:::i;:::-;10704:67;;10799:39;10818:7;:12;10826:3;10818:12;;;;;;;;;;;;;;;:19;;;10799:14;:18;;:39;;;;:::i;:::-;10782:56;;10865:25;1376:2;10876;:13;10865:6;:10;;:25;;;;:::i;:::-;10848:42;;10908:6;10901:13;;10163:758;;;;;;;;:::o;1072:26::-;;;;:::o;11445:149::-;11520:7;11546:41;11564:22;;11546:13;;:17;;:41;;;;:::i;:::-;11539:48;;11445:149;:::o;1151:29::-;;;;:::o;7486:253::-;3406:5;;;;;;;;;;;3392:19;;:10;:19;;;;:49;;;;;3416:7;:19;3424:10;3416:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;3415:26;3392:49;3388:63;;;3443:8;;;3388:63;7565:3;3529:7;:12;3537:3;3529:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;3528:20;3524:34;;;3550:8;;;3524:34;7594:23;7610:6;7594:11;;:15;;:23;;;;:::i;:::-;7580:11;:37;;;;7649:31;7673:6;7649:7;:12;7657:3;7649:12;;;;;;;;;;;;;;;:19;;;:23;;:31;;;;:::i;:::-;7627:7;:12;7635:3;7627:12;;;;;;;;;;;;;;;:19;;:53;;;;7690:42;7699:3;7704:6;7712:7;:12;7720:3;7712:12;;;;;;;;;;;;;;;:19;;;7690:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3464:1;7486:253;;:::o;467:29::-;;;;;;;;;;;;;:::o;4686:497::-;4948:23;;:::i;:::-;3406:5;;;;;;;;;;;3392:19;;:10;:19;;;;:49;;;;;3416:7;:19;3424:10;3416:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;3415:26;3392:49;3388:63;;;3443:8;;;3388:63;4855:7;:12;4863:3;4855:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;4851:33;;;4876:8;;;4851:33;4925:2;4904:10;4898:24;:29;4894:43;;;4929:8;;;4894:43;5000:4;4981:9;:16;;:23;;;;;;;;;;;5032:5;5014:9;:15;;:23;;;;;;;;;;;5070:10;5047:9;:20;;:33;;;;5106:9;5091:7;:12;5099:3;5091:12;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;5125:10;5141:3;5125:20;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;5125:20:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5155:21;5164:3;5169:6;5155:8;:21::i;:::-;4686:497;;;;;:::o;1466:37::-;;;;:::o;3967:249::-;4018:11;4031:13;4047:26;4076:19;4098:22;4147:4;4154:5;4161:18;4181:11;4194:14;4132:77;;;;;;;;;;;;;3967:249;;;;;:::o;11624:131::-;11707:7;11733:15;11743:1;11746;11733;:9;;:15;;;;;:::i;:::-;11726:22;;11624:131;;;;;:::o;5941:184::-;3406:5;;;;;;;;;;;3392:19;;:10;:19;;;;:49;;;;;3416:7;:19;3424:10;3416:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;3415:26;3392:49;3388:63;;;3443:8;;;3388:63;6028:50;6044:3;6049:7;:12;6057:3;6049:12;;;;;;;;;;;;;;;:18;;;;;;;;;;;;6069:8;6028:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6109:8;6088:7;:12;6096:3;6088:12;;;;;;;;;;;;;;;:18;;;:29;;;;;;;;;;;;;;;;;;5941:184;;:::o;4226:264::-;4313:10;4325:14;4341:17;4360;4387:15;;:::i;:::-;4295:8;3529:7;:12;3537:3;3529:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;3528:20;3524:34;;;3550:8;;;3524:34;4405:7;:17;4413:8;4405:17;;;;;;;;;;;;;;;4387:35;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4438:1;:7;;;4447:1;:8;;;4457:1;:11;;;4470:1;:12;;;4430:53;;;;;;;;;;;4226:264;;;;;;;:::o;584:60::-;628:9;620:5;;:17;;;;;;;;;;;;;;;;;;584:60::o;557:20::-;;;;;;;;;;;;;:::o;7056:373::-;7156:21;3406:5;;;;;;;;;;;3392:19;;:10;:19;;;;:49;;;;;3416:7;:19;3424:10;3416:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;3415:26;3392:49;3388:63;;;3443:8;;;3388:63;7141:3;3529:7;:12;3537:3;3529:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;3528:20;3524:34;;;3550:8;;;3524:34;7180:7;:12;7188:3;7180:12;;;;;;;;;;;;;;;:19;;;7156:43;;7223:13;7213:6;:23;7209:37;;;7238:8;;;7209:37;7269:13;7260:6;:22;7256:167;;;7298:40;7307:3;7312:25;7323:13;7312:6;:10;;:25;;;;:::i;:::-;7298:8;:40::i;:::-;7256:167;;;7369:43;7381:3;7386:25;7404:6;7386:13;:17;;:25;;;;:::i;:::-;7369:11;:43::i;:::-;7256:167;3464:1;7056:373;;;:::o;3635:97::-;3685:4;3708:10;:17;;;;3701:24;;3635:97;:::o;4496:136::-;4562:7;4594:5;4588:22;;;4619:4;4588:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4588:37:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;4588:37:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;4588:37:0;;;;;;;;;;;;;;;;4581:44;;4496:136;;;:::o;1432:28::-;;;;:::o;1340:38::-;1376:2;1340:38;:::o;6190:187::-;3406:5;;;;;;;;;;;3392:19;;:10;:19;;;;:49;;;;;3416:7;:19;3424:10;3416:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;3415:26;3392:49;3388:63;;;3443:8;;;3388:63;6291:2;6273:7;6267:21;:26;6263:40;;;6295:8;;;6263:40;6313:33;6332:4;6338:7;6313:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;6313:33:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6363:7;6356:4;:14;;;;;;;;;;;;:::i;:::-;;6190:187;:::o;3742:106::-;3800:7;3826:10;3837:3;3826:15;;;;;;;;;;;;;;;;;;;;;;;;;;;3819:22;;3742:106;;;:::o;8911:544::-;9007:16;8985:10;3529:7;:12;3537:3;3529:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;3528:20;3524:34;;;3550:8;;;3524:34;9026:56;9064:10;9076:5;9026:37;:56::i;:::-;9007:75;;9105:56;9118:7;:19;9126:10;9118:19;;;;;;;;;;;;;;;:35;;:42;9154:5;9118:42;;;;;;;;;;;;;;;;9105:8;:12;;:56;;;;:::i;:::-;9096:6;:65;9092:79;;;9163:8;;;9092:79;9227:54;9274:6;9227:7;:19;9235:10;9227:19;;;;;;;;;;;;;;;:35;;:42;9263:5;9227:42;;;;;;;;;;;;;;;;:46;;:54;;;;:::i;:::-;9182:7;:19;9190:10;9182:19;;;;;;;;;;;;;;;:35;;:42;9218:5;9182:42;;;;;;;;;;;;;;;:99;;;;9307:25;9325:6;9307;:13;9314:5;9307:13;;;;;;;;;;;;;;;;:17;;:25;;;;:::i;:::-;9291:6;:13;9298:5;9291:13;;;;;;;;;;;;;;;:41;;;;9348:5;9342:21;;;9364:10;9376:6;9342:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9342:41:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;9342:41:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;9342:41:0;;;;;;;;;;;;;;;;;9393:55;9407:10;9419:6;9427:5;9434:6;:13;9441:5;9434:13;;;;;;;;;;;;;;;;9393:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8911:544;;;;:::o;7796:259::-;3406:5;;;;;;;;;;;3392:19;;:10;:19;;;;:49;;;;;3416:7;:19;3424:10;3416:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;3415:26;3392:49;3388:63;;;3443:8;;;3388:63;7878:3;3529:7;:12;3537:3;3529:12;;;;;;;;;;;;;;;:19;;;;;;;;;;;;3528:20;3524:34;;;3550:8;;;3524:34;7907:23;7923:6;7907:11;;:15;;:23;;;;:::i;:::-;7893:11;:37;;;;7962:31;7986:6;7962:7;:12;7970:3;7962:12;;;;;;;;;;;;;;;:19;;;:23;;:31;;;;:::i;:::-;7940:7;:12;7948:3;7940:12;;;;;;;;;;;;;;;:19;;:53;;;;8003:45;8015:3;8020:6;8028:7;:12;8036:3;8028:12;;;;;;;;;;;;;;;:19;;;8003:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3464:1;7796:259;;:::o;1944:507::-;2108:23;;:::i;:::-;1986:11;;;;;;;;;;;1985:12;1977:21;;;;;;;;2022:4;2008:11;;:18;;;;;;;;;;;;;;;;;;2045:9;2037:5;;:17;;;;;;;;;;;;;;;;;;2085:12;2064:18;:33;;;;2160:4;2141:9;:16;;:23;;;;;;;;;;;2192:4;2174:9;:15;;:22;;;;;;;;;;;2227:9;2206:7;:18;2214:9;2206:18;;;;;;;;;;;;;;;:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;2246:10;2262:9;2246:26;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;2246:26:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2297:18;2313:1;2297:11;;:15;;:18;;;;:::i;:::-;2283:11;:32;;;;2353;2383:1;2353:7;:18;2361:9;2353:18;;;;;;;;;;;;;;;:25;;;:29;;:32;;;;:::i;:::-;2325:7;:18;2333:9;2325:18;;;;;;;;;;;;;;;:25;;:60;;;;2395:49;2404:9;2415:1;2418:7;:18;2426:9;2418:18;;;;;;;;;;;;;;;:25;;;2395:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1944:507;:::o;1896:41::-;;;;;;;;;;;;;;;;;:::o;755:147::-;703:5;;;;;;;;;;;689:19;;:10;:19;;;:41;;;;725:5;;;;;;;;;;;712:18;;:9;:18;;;689:41;681:50;;;;;;;;851:1;831:22;;:8;:22;;;;827:69;;;877:8;869:5;;:16;;;;;;;;;;;;;;;;;;827:69;755:147;:::o;1594:27::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;5189:341::-;3406:5;;;;;;;;;;;3392:19;;:10;:19;;;;:49;;;;;3416:7;:19;3424:10;3416:19;;;;;;;;;;;;;;;:25;;;;;;;;;;;;3415:26;3392:49;3388:63;;;3443:8;;;3388:63;5338:4;5333:10;;;;;;;;;;;;;36:153:-1;66:2;61:3;58:11;51:19;36:153;;;182:3;176:10;171:3;164:23;98:2;93:3;89:12;82:19;;123:2;118:3;114:12;107:19;;148:2;143:3;139:12;132:19;;36:153;;;274:1;267:3;263:2;259:12;254:3;250:22;246:30;315:4;311:9;305:3;299:10;295:26;356:4;350:3;344:10;340:21;389:7;380;377:20;372:3;365:33;3:399;;;5333:10:0;;;;;;;;;;;;;;;;5300:43;;;5305:7;:12;5313:3;5305:12;;;;;;;;;;;;;;;:23;;5300:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:43;;;;;5296:76;;;5345:27;5362:3;5367:4;5345:16;:27::i;:::-;5296:76;5408:7;5386:29;;:7;:12;5394:3;5386:12;;;;;;;;;;;;;;;:18;;;;;;;;;;;;:29;;;;5382:69;;;5417:34;5438:3;5443:7;5417:20;:34::i;:::-;5382:69;5488:6;5465:7;:12;5473:3;5465:12;;;;;;;;;;;;;;;:19;;;:29;;5461:62;;;5496:27;5511:3;5516:6;5496:14;:27::i;:::-;5461:62;5189:341;;;;:::o;13185:124::-;13247:7;13278:1;13273;:6;;13266:14;;;;;;13301:1;13297;:5;13290:12;;13185:124;;;;:::o;13315:147::-;13377:7;13396:9;13412:1;13408;:5;13396:17;;13435:1;13430;:6;;13423:14;;;;;;13454:1;13447:8;;13315:147;;;;;:::o;13627:377::-;13729:16;13805:18;13910:17;13826:35;13830:9;13858:1;13848:9;:11;13841:2;:19;13826:3;:35::i;:::-;13805:56;;13967:2;13962:1;13931:28;13935:10;13947:11;13931:3;:28::i;:::-;:32;13930:39;;;;;;;;13910:59;;13987:9;13979:18;;13627:377;;;;;;;:::o;12725:161::-;12787:7;12806:9;12822:1;12818;:5;12806:17;;12845:1;12840;:6;:20;;;;12859:1;12854;12850;:5;;;;;;;;:10;12840:20;12833:28;;;;;;12878:1;12871:8;;12725:161;;;;;:::o;12892:287::-;12954:7;13051:9;13067:1;13063;:5;;;;;;;;13051:17;;13171:1;13164:8;;12892:287;;;;;:::o;444:11313::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.15;\n\n/**\n * @title Doneth (Doneth)\n * @dev Doneth is a contract that allows shared access to funds\n * in the form of Ether and ERC20 tokens. It is especially relevant\n * to donation based projects. The admins of the contract determine \n * who is a member, and each member gets a number of shares. The \n * number of shares each member has determines how much Ether/ERC20 \n * the member can withdraw from the contract.\n */\n\n\ncontract Doneth {\n\n address public implementation;\n // constructor(address _implementation) public {}\n\n address public owner;\n\n function Ownable() public {\n owner = tx.origin;\n }\n\n modifier onlyOwner() {\n require(msg.sender == owner || tx.origin == owner);\n _;\n }\n\n function transferOwnership(address newOwner) onlyOwner public {\n if (newOwner != address(0)) {\n owner = newOwner;\n }\n }\n\n using SafeMath for uint256; \n\n bool public initialized;\n\n // Name of the contract\n string public name;\n\n // Sum of all shares allocated to members\n uint256 public totalShares;\n\n // Sum of all withdrawals done by members\n uint256 public totalWithdrawn;\n\n // Block number of when the contract was created\n uint256 public genesisBlockNumber;\n\n // Number of decimal places for floating point division\n uint256 constant public PRECISION = 18;\n\n // Variables for shared expense allocation\n uint256 public sharedExpense;\n uint256 public sharedExpenseWithdrawn;\n\n // Used to keep track of members\n mapping(address => Member) public members;\n address[] public memberKeys;\n struct Member {\n bool exists;\n bool admin;\n uint256 shares;\n uint256 withdrawn;\n string memberName;\n mapping(address => uint256) tokensWithdrawn;\n }\n\n // Used to keep track of ERC20 tokens used and how much withdrawn\n mapping(address => uint256) public tokens;\n\n function init() public {\n require(!initialized);\n initialized = true;\n\n owner = tx.origin;\n genesisBlockNumber = block.number;\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = true;\n members[tx.origin] = newMember;\n memberKeys.push(tx.origin);\n\n totalShares = totalShares.add(1);\n members[tx.origin].shares = members[tx.origin].shares.add(1);\n AddShare(tx.origin, 1, members[tx.origin].shares);\n }\n\n event Deposit(address from, uint value);\n event Withdraw(address from, uint value, uint256 newTotalWithdrawn);\n event TokenWithdraw(address from, uint value, address token, uint amount);\n event AddShare(address who, uint256 addedShares, uint256 newTotalShares);\n event RemoveShare(address who, uint256 removedShares, uint256 newTotalShares);\n event ChangePrivilege(address who, bool oldValue, bool newValue);\n event ChangeContractName(string oldValue, string newValue);\n event ChangeMemberName(address who, string oldValue, string newValue);\n event ChangeSharedExpense(uint256 contractBalance, uint256 oldValue, uint256 newValue);\n event WithdrawSharedExpense(address from, address to, uint value, uint256 newSharedExpenseWithdrawn);\n\n // Fallback function accepts Ether from donators\n function () public payable {\n Deposit(msg.sender, msg.value);\n }\n\n modifier onlyAdmin() { \n if (msg.sender != owner && !members[msg.sender].admin) revert(); \n _;\n }\n\n modifier onlyExisting(address who) { \n if (!members[who].exists) revert(); \n _;\n }\n\n // Series of getter functions for contract data\n function getMemberCount() public constant returns(uint) {\n return memberKeys.length;\n }\n \n function getMemberAtKey(uint key) public constant returns(address) {\n return memberKeys[key];\n }\n \n function getBalance() public constant returns(uint256 balance) {\n return this.balance;\n }\n \n function getContractInfo() public constant returns(string name, address owner, uint256 genesisBlockNumber, uint256 totalShares, uint256 totalWithdrawn) {\n return (string(name), owner, genesisBlockNumber, totalShares, totalWithdrawn);\n }\n \n function returnMember(address _address) public constant onlyExisting(_address) returns(bool admin, uint256 shares, uint256 withdrawn, string memberName) {\n Member memory m = members[_address];\n return (m.admin, m.shares, m.withdrawn, m.memberName);\n }\n\n function checkERC20Balance(address token) public constant returns(uint256) {\n return ERC20(token).balanceOf(address(this));\n }\n\n // Function to add members to the contract \n function addMember(address who, uint256 shares, bool admin, string memberName) public onlyAdmin() {\n // Don't allow the same member to be added twice\n if (members[who].exists) revert();\n if (bytes(memberName).length > 21) revert();\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = admin;\n newMember.memberName = memberName;\n\n members[who] = newMember;\n memberKeys.push(who);\n addShare(who, shares);\n }\n\n function updateMember(address who, uint256 shares, bool isAdmin, string name) public onlyAdmin() {\n if (sha3(members[who].memberName) != sha3(name)) changeMemberName(who, name);\n if (members[who].admin != isAdmin) changeAdminPrivilege(who, isAdmin);\n if (members[who].shares != shares) allocateShares(who, shares);\n }\n\n // Only owner, admin or member can change member's name\n function changeMemberName(address who, string newName) public onlyExisting(who) {\n if (msg.sender != who && msg.sender != owner && !members[msg.sender].admin) revert();\n if (bytes(newName).length > 21) revert();\n ChangeMemberName(who, members[who].memberName, newName);\n members[who].memberName = newName;\n }\n\n function changeAdminPrivilege(address who, bool newValue) public onlyAdmin() {\n ChangePrivilege(who, members[who].admin, newValue);\n members[who].admin = newValue; \n }\n\n // Only admins and owners can change the contract name\n function changeContractName(string newName) public onlyAdmin() {\n if (bytes(newName).length > 21) revert();\n ChangeContractName(name, newName);\n name = newName;\n }\n\n // Shared expense allocation allows admins to withdraw an amount to be used for shared\n // expenses. Shared expense allocation subtracts from the total balance of the contract. \n // Only owner can change this amount.\n function changeSharedExpenseAllocation(uint256 newAllocation) public onlyOwner() {\n if (newAllocation < sharedExpenseWithdrawn) revert();\n if (newAllocation.sub(sharedExpenseWithdrawn) > this.balance) revert();\n\n ChangeSharedExpense(this.balance, sharedExpense, newAllocation);\n sharedExpense = newAllocation;\n }\n\n // Set share amount explicitly by calculating difference then adding or removing accordingly\n function allocateShares(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n uint256 currentShares = members[who].shares;\n if (amount == currentShares) revert();\n if (amount > currentShares) {\n addShare(who, amount.sub(currentShares));\n } else {\n removeShare(who, currentShares.sub(amount));\n }\n }\n\n // Increment the number of shares for a member\n function addShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.add(amount);\n members[who].shares = members[who].shares.add(amount);\n AddShare(who, amount, members[who].shares);\n }\n\n // Decrement the number of shares for a member\n function removeShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.sub(amount);\n members[who].shares = members[who].shares.sub(amount);\n RemoveShare(who, amount, members[who].shares);\n }\n\n // Function for a member to withdraw Ether from the contract proportional\n // to the amount of shares they have. Calculates the totalWithdrawableAmount\n // in Ether based on the member's share and the Ether balance of the contract,\n // then subtracts the amount of Ether that the member has already previously\n // withdrawn.\n function withdraw(uint256 amount) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableAmount(msg.sender);\n if (amount > newTotal.sub(members[msg.sender].withdrawn)) revert();\n \n members[msg.sender].withdrawn = members[msg.sender].withdrawn.add(amount);\n totalWithdrawn = totalWithdrawn.add(amount);\n msg.sender.transfer(amount);\n Withdraw(msg.sender, amount, totalWithdrawn);\n }\n\n // Withdrawal function for ERC20 tokensx\n function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token);\n if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert();\n\n members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount);\n tokens[token] = tokens[token].add(amount);\n ERC20(token).transfer(msg.sender, amount);\n TokenWithdraw(msg.sender, amount, token, tokens[token]);\n }\n\n // Withdraw from shared expense allocation. Total withdrawable is calculated as \n // sharedExpense minus sharedExpenseWithdrawn. Only Admin can withdraw from shared expense.\n function withdrawSharedExpense(uint256 amount, address to) public onlyAdmin() {\n if (amount > calculateTotalExpenseWithdrawableAmount()) revert();\n \n sharedExpenseWithdrawn = sharedExpenseWithdrawn.add(amount);\n to.transfer(amount);\n WithdrawSharedExpense(msg.sender, to, amount, sharedExpenseWithdrawn);\n }\n\n // Converts from shares to Eth.\n // Ex: 2 shares, 4 total shares, 40 Eth balance\n // 40 Eth / 4 total shares = 10 eth per share * 2 shares = 20 Eth to cash out\n function calculateTotalWithdrawableAmount(address who) public constant onlyExisting(who) returns (uint256) {\n // Total balance to calculate share from = \n // contract balance + totalWithdrawn - sharedExpense + sharedExpenseWithdrawn\n uint256 balanceSum = this.balance.add(totalWithdrawn);\n balanceSum = balanceSum.sub(sharedExpense);\n balanceSum = balanceSum.add(sharedExpenseWithdrawn);\n \n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 ethPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 ethPPN = ethPerSharePPN.mul(members[who].shares);\n uint256 ethVal = ethPPN.div(10**PRECISION); \n return ethVal;\n }\n\n\n function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) {\n uint256 balanceSum = checkERC20Balance(token).add(tokens[token]);\n\n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 tokPPN = tokPerSharePPN.mul(members[who].shares);\n uint256 tokVal = tokPPN.div(10**PRECISION); \n return tokVal;\n }\n\n function calculateTotalExpenseWithdrawableAmount() public constant returns(uint256) {\n return sharedExpense.sub(sharedExpenseWithdrawn);\n }\n\n // Used for testing\n function delegatePercent(uint256 a, uint256 b, uint256 c) public constant returns (uint256) {\n return a.percent(b, c);\n }\n}\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n\n // Using from SO: https://stackoverflow.com/questions/42738640/division-in-ethereum-solidity/42739843#42739843\n // Adapted to use SafeMath and uint256.\n function percent(uint256 numerator, uint256 denominator, uint256 precision) internal constant returns(uint256 quotient) {\n // caution, check safe-to-multiply here\n uint256 _numerator = mul(numerator, 10 ** (precision+1));\n // with rounding of last digit\n uint256 _quotient = (div(_numerator, denominator) + 5) / 10;\n return (_quotient);\n }\n}\n\n", "sourcePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "ast": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "exportedSymbols": { "Doneth": [ - 1194 + 1146 ], "ERC20": [ - 1261 + 1213 ], "ERC20Basic": [ - 1221 - ], - "Ownable": [ - 48 + 1173 ], "SafeMath": [ - 1393 + 1345 ] }, - "id": 1394, + "id": 1346, "nodeType": "SourceUnit", "nodes": [ { @@ -957,20 +945,20 @@ "contractKind": "contract", "documentation": "@title Doneth (Doneth)\n@dev Doneth is a contract that allows shared access to funds\nin the form of Ether and ERC20 tokens. It is especially relevant\nto donation based projects. The admins of the contract determine \nwho is a member, and each member gets a number of shares. The \nnumber of shares each member has determines how much Ether/ERC20 \nthe member can withdraw from the contract.", "fullyImplemented": true, - "id": 48, + "id": 1146, "linearizedBaseContracts": [ - 48 + 1146 ], - "name": "Ownable", + "name": "Doneth", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 3, - "name": "owner", + "name": "implementation", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "640:20:0", + "scope": 1146, + "src": "467:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -981,7 +969,33 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "640:7:0", + "src": "467:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1146, + "src": "557:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -992,26 +1006,26 @@ }, { "body": { - "id": 11, + "id": 13, "nodeType": "Block", - "src": "693:34:0", + "src": "610:34:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 9, + "id": 11, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 6, + "id": 8, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "703:5:0", + "referencedDeclaration": 5, + "src": "620:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1023,18 +1037,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 7, + "id": 9, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "711:2:0", + "referencedDeclaration": 1512, + "src": "628:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 8, + "id": 10, "isConstant": false, "isLValue": false, "isPure": false, @@ -1042,56 +1056,56 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "711:9:0", + "src": "628:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "703:17:0", + "src": "620:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 10, + "id": 12, "nodeType": "ExpressionStatement", - "src": "703:17:0" + "src": "620:17:0" } ] }, "documentation": null, - "id": 12, + "id": 14, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 4, + "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "683:2:0" + "src": "600:2:0" }, "payable": false, "returnParameters": { - "id": 5, + "id": 7, "nodeType": "ParameterList", "parameters": [], - "src": "693:0:0" + "src": "610:0:0" }, - "scope": 48, - "src": "667:60:0", + "scope": 1146, + "src": "584:60:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 27, + "id": 29, "nodeType": "Block", - "src": "754:78:0", + "src": "671:78:0", "statements": [ { "expression": { @@ -1103,7 +1117,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 23, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -1114,7 +1128,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18, + "id": 20, "isConstant": false, "isLValue": false, "isPure": false, @@ -1123,18 +1137,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 15, + "id": 17, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "772:3:0", + "referencedDeclaration": 1500, + "src": "689:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 16, + "id": 18, "isConstant": false, "isLValue": false, "isPure": false, @@ -1142,7 +1156,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "772:10:0", + "src": "689:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1152,18 +1166,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 17, + "id": 19, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "786:5:0", + "referencedDeclaration": 5, + "src": "703:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "772:19:0", + "src": "689:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1177,7 +1191,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 22, + "id": 24, "isConstant": false, "isLValue": false, "isPure": false, @@ -1186,18 +1200,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 19, + "id": 21, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "795:2:0", + "referencedDeclaration": 1512, + "src": "712:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 20, + "id": 22, "isConstant": false, "isLValue": false, "isPure": false, @@ -1205,7 +1219,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "795:9:0", + "src": "712:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1215,24 +1229,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 21, + "id": 23, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "808:5:0", + "referencedDeclaration": 5, + "src": "725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "795:18:0", + "src": "712:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "772:41:0", + "src": "689:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1246,21 +1260,21 @@ "typeString": "bool" } ], - "id": 14, + "id": 16, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1514, - "src": "764:7:0", + "referencedDeclaration": 1503, + "src": "681:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 24, + "id": 26, "isConstant": false, "isLValue": false, "isPure": false, @@ -1268,41 +1282,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "764:50:0", + "src": "681:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25, + "id": 27, "nodeType": "ExpressionStatement", - "src": "764:50:0" + "src": "681:50:0" }, { - "id": 26, + "id": 28, "nodeType": "PlaceholderStatement", - "src": "824:1:0" + "src": "741:1:0" } ] }, "documentation": null, - "id": 28, + "id": 30, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 13, + "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "751:2:0" + "src": "668:2:0" }, - "src": "733:99:0", + "src": "650:99:0", "visibility": "internal" }, { "body": { - "id": 46, + "id": 48, "nodeType": "Block", - "src": "900:85:0", + "src": "817:85:0", "statements": [ { "condition": { @@ -1311,19 +1325,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 39, + "id": 41, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 35, + "id": 37, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "914:8:0", + "referencedDeclaration": 32, + "src": "831:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1337,14 +1351,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 37, + "id": 39, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "934:1:0", + "src": "851:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -1360,20 +1374,20 @@ "typeString": "int_const 0" } ], - "id": 36, + "id": 38, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "926:7:0", + "src": "843:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 38, + "id": 40, "isConstant": false, "isLValue": false, "isPure": true, @@ -1381,43 +1395,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "926:10:0", + "src": "843:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "914:22:0", + "src": "831:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 45, + "id": 47, "nodeType": "IfStatement", - "src": "910:69:0", + "src": "827:69:0", "trueBody": { - "id": 44, + "id": 46, "nodeType": "Block", - "src": "938:41:0", + "src": "855:41:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 42, + "id": 44, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 40, + "id": 42, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "952:5:0", + "referencedDeclaration": 5, + "src": "869:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1427,26 +1441,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 41, + "id": 43, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "960:8:0", + "referencedDeclaration": 32, + "src": "877:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "952:16:0", + "src": "869:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 43, + "id": 45, "nodeType": "ExpressionStatement", - "src": "952:16:0" + "src": "869:16:0" } ] } @@ -1454,44 +1468,44 @@ ] }, "documentation": null, - "id": 47, + "id": 49, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 33, + "id": 35, "modifierName": { "argumentTypes": null, - "id": 32, + "id": 34, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "883:9:0", + "referencedDeclaration": 30, + "src": "800:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "883:9:0" + "src": "800:9:0" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 31, + "id": 33, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30, + "id": 32, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 47, - "src": "865:16:0", + "scope": 49, + "src": "782:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1499,10 +1513,10 @@ "typeString": "address" }, "typeName": { - "id": 29, + "id": 31, "name": "address", "nodeType": "ElementaryTypeName", - "src": "865:7:0", + "src": "782:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1512,81 +1526,42 @@ "visibility": "internal" } ], - "src": "864:18:0" + "src": "781:18:0" }, "payable": false, "returnParameters": { - "id": 34, + "id": 36, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:0" + "src": "817:0:0" }, - "scope": 48, - "src": "838:147:0", + "scope": 1146, + "src": "755:147:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" - } - ], - "scope": 1394, - "src": "617:370:0" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 49, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "1008:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$48", - "typeString": "contract Ownable" - } - }, - "id": 50, - "nodeType": "InheritanceSpecifier", - "src": "1008:7:0" - } - ], - "contractDependencies": [ - 48 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1194, - "linearizedBaseContracts": [ - 1194, - 48 - ], - "name": "Doneth", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "id": 53, + "id": 52, "libraryName": { "contractScope": null, - "id": 51, + "id": 50, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1393, - "src": "1028:8:0", + "referencedDeclaration": 1345, + "src": "914:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$1393", + "typeIdentifier": "t_contract$_SafeMath_$1345", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1022:27:0", + "src": "908:27:0", "typeName": { - "id": 52, + "id": 51, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1041:7:0", + "src": "927:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1595,11 +1570,11 @@ }, { "constant": false, - "id": 55, + "id": 54, "name": "initialized", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1057:23:0", + "scope": 1146, + "src": "943:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1607,10 +1582,10 @@ "typeString": "bool" }, "typeName": { - "id": 54, + "id": 53, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1057:4:0", + "src": "943:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1621,11 +1596,11 @@ }, { "constant": false, - "id": 57, + "id": 56, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1115:18:0", + "scope": 1146, + "src": "1001:18:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1633,10 +1608,10 @@ "typeString": "string" }, "typeName": { - "id": 56, + "id": 55, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1115:6:0", + "src": "1001:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1647,11 +1622,11 @@ }, { "constant": false, - "id": 59, + "id": 58, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1186:26:0", + "scope": 1146, + "src": "1072:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1659,10 +1634,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 57, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1186:7:0", + "src": "1072:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1673,11 +1648,11 @@ }, { "constant": false, - "id": 61, + "id": 60, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1265:29:0", + "scope": 1146, + "src": "1151:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1685,10 +1660,10 @@ "typeString": "uint256" }, "typeName": { - "id": 60, + "id": 59, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1265:7:0", + "src": "1151:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1699,11 +1674,11 @@ }, { "constant": false, - "id": 63, + "id": 62, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1354:33:0", + "scope": 1146, + "src": "1240:33:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1711,10 +1686,10 @@ "typeString": "uint256" }, "typeName": { - "id": 62, + "id": 61, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1354:7:0", + "src": "1240:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1725,11 +1700,11 @@ }, { "constant": true, - "id": 66, + "id": 65, "name": "PRECISION", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1454:38:0", + "scope": 1146, + "src": "1340:38:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1737,10 +1712,10 @@ "typeString": "uint256" }, "typeName": { - "id": 64, + "id": 63, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1454:7:0", + "src": "1340:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1749,14 +1724,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 65, + "id": 64, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1490:2:0", + "src": "1376:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -1768,11 +1743,11 @@ }, { "constant": false, - "id": 68, + "id": 67, "name": "sharedExpense", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1546:28:0", + "scope": 1146, + "src": "1432:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1780,10 +1755,10 @@ "typeString": "uint256" }, "typeName": { - "id": 67, + "id": 66, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1546:7:0", + "src": "1432:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1794,11 +1769,11 @@ }, { "constant": false, - "id": 70, + "id": 69, "name": "sharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1580:37:0", + "scope": 1146, + "src": "1466:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1806,10 +1781,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 68, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1580:7:0", + "src": "1466:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1820,44 +1795,44 @@ }, { "constant": false, - "id": 74, + "id": 73, "name": "members", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1661:41:0", + "scope": 1146, + "src": "1547:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "typeName": { - "id": 73, + "id": 72, "keyType": { - "id": 71, + "id": 70, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1669:7:0", + "src": "1555:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1661:26:0", + "src": "1547:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "valueType": { "contractScope": null, - "id": 72, + "id": 71, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "1680:6:0", + "referencedDeclaration": 91, + "src": "1566:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } } @@ -1867,11 +1842,11 @@ }, { "constant": false, - "id": 77, + "id": 76, "name": "memberKeys", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1708:27:0", + "scope": 1146, + "src": "1594:27:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1880,19 +1855,19 @@ }, "typeName": { "baseType": { - "id": 75, + "id": 74, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1708:7:0", + "src": "1594:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 76, + "id": 75, "length": null, "nodeType": "ArrayTypeName", - "src": "1708:9:0", + "src": "1594:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -1903,15 +1878,15 @@ }, { "canonicalName": "Doneth.Member", - "id": 92, + "id": 91, "members": [ { "constant": false, - "id": 79, + "id": 78, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1765:11:0", + "scope": 91, + "src": "1651:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1919,10 +1894,10 @@ "typeString": "bool" }, "typeName": { - "id": 78, + "id": 77, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1765:4:0", + "src": "1651:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1933,11 +1908,11 @@ }, { "constant": false, - "id": 81, + "id": 80, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1786:10:0", + "scope": 91, + "src": "1672:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1945,10 +1920,10 @@ "typeString": "bool" }, "typeName": { - "id": 80, + "id": 79, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1786:4:0", + "src": "1672:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1959,11 +1934,11 @@ }, { "constant": false, - "id": 83, + "id": 82, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1806:14:0", + "scope": 91, + "src": "1692:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1971,10 +1946,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 81, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1806:7:0", + "src": "1692:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1985,11 +1960,11 @@ }, { "constant": false, - "id": 85, + "id": 84, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1830:17:0", + "scope": 91, + "src": "1716:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1997,10 +1972,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 83, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1830:7:0", + "src": "1716:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2011,11 +1986,11 @@ }, { "constant": false, - "id": 87, + "id": 86, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1857:17:0", + "scope": 91, + "src": "1743:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2023,10 +1998,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 85, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1857:6:0", + "src": "1743:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -2037,11 +2012,11 @@ }, { "constant": false, - "id": 91, + "id": 90, "name": "tokensWithdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1884:43:0", + "scope": 91, + "src": "1770:43:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2049,28 +2024,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 90, + "id": 89, "keyType": { - "id": 88, + "id": 87, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1892:7:0", + "src": "1778:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1884:27:0", + "src": "1770:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 89, + "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1903:7:0", + "src": "1789:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2083,161 +2058,60 @@ ], "name": "Member", "nodeType": "StructDefinition", - "scope": 1194, - "src": "1741:193:0", + "scope": 1146, + "src": "1627:193:0", "visibility": "public" }, { "constant": false, - "id": 96, + "id": 95, "name": "tokens", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2010:39:0", + "scope": 1146, + "src": "1896:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 95, + "id": 94, "keyType": { - "id": 93, + "id": 92, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:7:0", + "src": "1904:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2010:25:0", + "src": "1896:27:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "valueType": { - "contractScope": null, - "id": 94, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 104, - "src": "2029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage_ptr", - "typeString": "struct Doneth.Token" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "tokenKeys", - "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2055:26:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", + "id": 93, + "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2055:7:0", + "src": "1915:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2055:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" } }, "value": null, "visibility": "public" }, - { - "canonicalName": "Doneth.Token", - "id": 104, - "members": [ - { - "constant": false, - "id": 101, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2110:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 100, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2110:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "name": "totalWithdrawn", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2131:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 102, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2131:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Token", - "nodeType": "StructDefinition", - "scope": 1194, - "src": "2087:73:0", - "visibility": "public" - }, { "body": { - "id": 223, + "id": 179, "nodeType": "Block", - "src": "2363:911:0", + "src": "1967:484:0", "statements": [ { "expression": { @@ -2245,7 +2119,7 @@ "arguments": [ { "argumentTypes": null, - "id": 113, + "id": 100, "isConstant": false, "isLValue": false, "isPure": false, @@ -2253,15 +2127,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2381:12:0", + "src": "1985:12:0", "subExpression": { "argumentTypes": null, - "id": 112, + "id": 99, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2382:11:0", + "referencedDeclaration": 54, + "src": "1986:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2271,24 +2145,6 @@ "typeIdentifier": "t_bool", "typeString": "bool" } - }, - { - "argumentTypes": null, - "hexValue": "414c524541445920494e495449414c495a4544", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2395:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" - }, - "value": "ALREADY INITIALIZED" } ], "expression": { @@ -2296,27 +2152,23 @@ { "typeIdentifier": "t_bool", "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" } ], - "id": 111, + "id": 98, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1515, - "src": "2373:7:0", + "referencedDeclaration": 1503, + "src": "1977:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 115, + "id": 101, "isConstant": false, "isLValue": false, "isPure": false, @@ -2324,32 +2176,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2373:44:0", + "src": "1977:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 116, + "id": 102, "nodeType": "ExpressionStatement", - "src": "2373:44:0" + "src": "1977:21:0" }, { "expression": { "argumentTypes": null, - "id": 119, + "id": 105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 117, + "id": 103, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2427:11:0", + "referencedDeclaration": 54, + "src": "2008:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2360,14 +2212,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 118, + "id": 104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2441:4:0", + "src": "2022:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2375,32 +2227,32 @@ }, "value": "true" }, - "src": "2427:18:0", + "src": "2008:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 120, + "id": 106, "nodeType": "ExpressionStatement", - "src": "2427:18:0" + "src": "2008:18:0" }, { "expression": { "argumentTypes": null, - "id": 124, + "id": 110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 121, + "id": 107, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "2455:5:0", + "referencedDeclaration": 5, + "src": "2037:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2412,18 +2264,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 122, + "id": 108, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2463:2:0", + "referencedDeclaration": 1512, + "src": "2045:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 123, + "id": 109, "isConstant": false, "isLValue": false, "isPure": false, @@ -2431,38 +2283,38 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2463:9:0", + "src": "2045:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2455:17:0", + "src": "2037:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 125, + "id": 111, "nodeType": "ExpressionStatement", - "src": "2455:17:0" + "src": "2037:17:0" }, { "expression": { "argumentTypes": null, - "id": 129, + "id": 115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 126, + "id": 112, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "2482:18:0", + "referencedDeclaration": 62, + "src": "2064:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2474,18 +2326,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 127, + "id": 113, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1501, - "src": "2503:5:0", + "referencedDeclaration": 1490, + "src": "2085:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 128, + "id": 114, "isConstant": false, "isLValue": false, "isPure": false, @@ -2493,601 +2345,197 @@ "memberName": "number", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2503:12:0", + "src": "2085:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2482:33:0", + "src": "2064:33:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 130, + "id": 116, "nodeType": "ExpressionStatement", - "src": "2482:33:0" + "src": "2064:33:0" }, { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 132, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2535:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2529:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2529:20:0", + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 118, + "name": "newMember", + "nodeType": "VariableDeclaration", + "scope": 180, + "src": "2108:23:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member" + }, + "typeName": { + "contractScope": null, + "id": 117, + "name": "Member", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 91, + "src": "2108:6:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", + "typeString": "struct Doneth.Member" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 119, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "2108:23:0" + }, + { + "expression": { + "argumentTypes": null, + "id": 124, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 120, + "name": "newMember", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 118, + "src": "2141:9:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member memory" } }, - "id": 134, + "id": 122, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberName": "length", + "lValueRequested": true, + "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2529:27:0", + "referencedDeclaration": 78, + "src": "2141:16:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "hexValue": "3231", - "id": 135, + "hexValue": "74727565", + "id": 123, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "number", + "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2559:2:0", + "src": "2160:4:0", "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "value": "21" + "value": "true" }, - "src": "2529:32:0", + "src": "2141:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "falseBody": null, - "id": 140, - "nodeType": "IfStatement", - "src": "2525:46:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 137, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2563:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2563:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2563:8:0" - } + "id": 125, + "nodeType": "ExpressionStatement", + "src": "2141:23:0" }, { - "condition": { + "expression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 146, + "id": 130, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { + "leftHandSide": { "argumentTypes": null, "expression": { "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 142, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2591:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 141, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2585:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2585:19:0", + "id": 126, + "name": "newMember", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 118, + "src": "2174:9:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member memory" } }, - "id": 144, + "id": 128, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberName": "length", + "lValueRequested": true, + "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2585:26:0", + "referencedDeclaration": 80, + "src": "2174:15:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "hexValue": "3231", - "id": 145, + "hexValue": "74727565", + "id": 129, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "number", + "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2614:2:0", + "src": "2192:4:0", "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "value": "21" + "value": "true" }, - "src": "2585:31:0", + "src": "2174:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "falseBody": null, - "id": 150, - "nodeType": "IfStatement", - "src": "2581:45:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 147, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2618:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2618:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:8:0" - } + "id": 131, + "nodeType": "ExpressionStatement", + "src": "2174:22:0" }, { "expression": { "argumentTypes": null, - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 151, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "2636:4:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 152, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2643:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2636:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 154, - "nodeType": "ExpressionStatement", - "src": "2636:20:0" - }, - { - "assignments": [], - "declarations": [ - { - "constant": false, - "id": 156, - "name": "newMember", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2721:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member" - }, - "typeName": { - "contractScope": null, - "id": 155, - "name": "Member", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "2721:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", - "typeString": "struct Doneth.Member" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 157, - "initialValue": null, - "nodeType": "VariableDeclarationStatement", - "src": "2721:23:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 162, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 158, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2754:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 160, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "exists", - "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "2754:16:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 161, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2773:4:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2754:23:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 163, - "nodeType": "ExpressionStatement", - "src": "2754:23:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 168, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 164, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2787:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 166, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "admin", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "2787:15:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 167, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2805:4:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2787:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "2787:22:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 170, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2819:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 172, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "memberName", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "2819:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 173, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2842:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2819:35:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 175, - "nodeType": "ExpressionStatement", - "src": "2819:35:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 181, + "id": 137, "isConstant": false, "isLValue": false, "isPure": false, @@ -3096,34 +2544,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 176, + "id": 132, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "2865:7:0", + "referencedDeclaration": 73, + "src": "2206:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 179, + "id": 135, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 177, + "id": 133, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2873:2:0", + "referencedDeclaration": 1512, + "src": "2214:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 178, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -3131,7 +2579,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2873:9:0", + "src": "2214:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3142,9 +2590,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2865:18:0", + "src": "2206:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -3152,26 +2600,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 180, + "id": 136, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2886:9:0", + "referencedDeclaration": 118, + "src": "2227:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "2865:30:0", + "src": "2206:30:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 182, + "id": 138, "nodeType": "ExpressionStatement", - "src": "2865:30:0" + "src": "2206:30:0" }, { "expression": { @@ -3181,18 +2629,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 186, + "id": 142, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2921:2:0", + "referencedDeclaration": 1512, + "src": "2262:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 187, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -3200,7 +2648,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2921:9:0", + "src": "2262:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3216,18 +2664,18 @@ ], "expression": { "argumentTypes": null, - "id": 183, + "id": 139, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "2905:10:0", + "referencedDeclaration": 76, + "src": "2246:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 185, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -3235,13 +2683,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2905:15:0", + "src": "2246:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 188, + "id": 144, "isConstant": false, "isLValue": false, "isPure": false, @@ -3249,32 +2697,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2905:26:0", + "src": "2246:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 189, + "id": 145, "nodeType": "ExpressionStatement", - "src": "2905:26:0" + "src": "2246:26:0" }, { "expression": { "argumentTypes": null, - "id": 195, + "id": 151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 190, + "id": 146, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2981:11:0", + "referencedDeclaration": 58, + "src": "2283:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3288,14 +2736,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 193, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3011:1:0", + "src": "2313:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -3313,32 +2761,32 @@ ], "expression": { "argumentTypes": null, - "id": 191, + "id": 147, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2995:11:0", + "referencedDeclaration": 58, + "src": "2297:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 192, + "id": 148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "2995:15:0", + "referencedDeclaration": 1305, + "src": "2297:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 194, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, @@ -3346,26 +2794,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2995:18:0", + "src": "2297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2981:32:0", + "src": "2283:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 196, + "id": 152, "nodeType": "ExpressionStatement", - "src": "2981:32:0" + "src": "2283:32:0" }, { "expression": { "argumentTypes": null, - "id": 210, + "id": 166, "isConstant": false, "isLValue": false, "isPure": false, @@ -3376,34 +2824,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 197, + "id": 153, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3023:7:0", + "referencedDeclaration": 73, + "src": "2325:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 200, + "id": 156, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 198, + "id": 154, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3031:2:0", + "referencedDeclaration": 1512, + "src": "2333:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 199, + "id": 155, "isConstant": false, "isLValue": false, "isPure": false, @@ -3411,7 +2859,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3031:9:0", + "src": "2333:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3422,21 +2870,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3023:18:0", + "src": "2325:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 201, + "id": 157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3023:25:0", + "referencedDeclaration": 82, + "src": "2325:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3450,14 +2898,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 208, + "id": 164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3081:1:0", + "src": "2383:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -3479,34 +2927,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 202, + "id": 158, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3051:7:0", + "referencedDeclaration": 73, + "src": "2353:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 205, + "id": 161, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 203, + "id": 159, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3059:2:0", + "referencedDeclaration": 1512, + "src": "2361:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 204, + "id": 160, "isConstant": false, "isLValue": false, "isPure": false, @@ -3514,7 +2962,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3059:9:0", + "src": "2361:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3525,41 +2973,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3051:18:0", + "src": "2353:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 206, + "id": 162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3051:25:0", + "referencedDeclaration": 82, + "src": "2353:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 207, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "3051:29:0", + "referencedDeclaration": 1305, + "src": "2353:29:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 209, + "id": 165, "isConstant": false, "isLValue": false, "isPure": false, @@ -3567,21 +3015,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3051:32:0", + "src": "2353:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3023:60:0", + "src": "2325:60:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 211, + "id": 167, "nodeType": "ExpressionStatement", - "src": "3023:60:0" + "src": "2325:60:0" }, { "expression": { @@ -3591,18 +3039,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 213, + "id": 169, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3102:2:0", + "referencedDeclaration": 1512, + "src": "2404:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 214, + "id": 170, "isConstant": false, "isLValue": false, "isPure": false, @@ -3610,7 +3058,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3102:9:0", + "src": "2404:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3619,14 +3067,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 215, + "id": 171, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3113:1:0", + "src": "2415:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -3640,34 +3088,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 216, + "id": 172, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3116:7:0", + "referencedDeclaration": 73, + "src": "2418:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 219, + "id": 175, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 217, + "id": 173, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3124:2:0", + "referencedDeclaration": 1512, + "src": "2426:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 218, + "id": 174, "isConstant": false, "isLValue": false, "isPure": false, @@ -3675,7 +3123,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3124:9:0", + "src": "2426:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3686,21 +3134,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3116:18:0", + "src": "2418:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 220, + "id": 176, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3116:25:0", + "referencedDeclaration": 82, + "src": "2418:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3722,18 +3170,18 @@ "typeString": "uint256" } ], - "id": 212, + "id": 168, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "3093:8:0", + "referencedDeclaration": 212, + "src": "2395:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 221, + "id": 177, "isConstant": false, "isLValue": false, "isPure": false, @@ -3741,20 +3189,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3093:49:0", + "src": "2395:49:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 222, + "id": 178, "nodeType": "ExpressionStatement", - "src": "3093:49:0" + "src": "2395:49:0" } ] }, "documentation": null, - "id": 224, + "id": 180, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3762,30 +3210,56 @@ "name": "init", "nodeType": "FunctionDefinition", "parameters": { - "id": 109, + "id": 96, + "nodeType": "ParameterList", + "parameters": [], + "src": "1957:2:0" + }, + "payable": false, + "returnParameters": { + "id": 97, + "nodeType": "ParameterList", + "parameters": [], + "src": "1967:0:0" + }, + "scope": 1146, + "src": "1944:507:0", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 186, + "name": "Deposit", + "nodeType": "EventDefinition", + "parameters": { + "id": 185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 106, - "name": "_contractName", + "id": 182, + "indexed": false, + "name": "from", "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2313:20:0", + "scope": 186, + "src": "2471:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" + "typeIdentifier": "t_address", + "typeString": "address" }, "typeName": { - "id": 105, - "name": "string", + "id": 181, + "name": "address", "nodeType": "ElementaryTypeName", - "src": "2313:6:0", + "src": "2471:7:0", "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" + "typeIdentifier": "t_address", + "typeString": "address" } }, "value": null, @@ -3793,91 +3267,12 @@ }, { "constant": false, - "id": 108, - "name": "_founderName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2335:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 107, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2335:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2312:43:0" - }, - "payable": false, - "returnParameters": { - "id": 110, - "nodeType": "ParameterList", - "parameters": [], - "src": "2363:0:0" - }, - "scope": 1194, - "src": "2299:975:0", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "public" - }, - { - "anonymous": false, - "documentation": null, - "id": 230, - "name": "Deposit", - "nodeType": "EventDefinition", - "parameters": { - "id": 229, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 226, - "indexed": false, - "name": "from", - "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3294:12:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 225, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "3294:7:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 228, + "id": 184, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3308:10:0", + "scope": 186, + "src": "2485:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3885,10 +3280,10 @@ "typeString": "uint256" }, "typeName": { - "id": 227, + "id": 183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3308:4:0", + "src": "2485:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3898,28 +3293,28 @@ "visibility": "internal" } ], - "src": "3293:26:0" + "src": "2470:26:0" }, - "src": "3280:40:0" + "src": "2457:40:0" }, { "anonymous": false, "documentation": null, - "id": 238, + "id": 194, "name": "Withdraw", "nodeType": "EventDefinition", "parameters": { - "id": 237, + "id": 193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 232, + "id": 188, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3340:12:0", + "scope": 194, + "src": "2517:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3927,10 +3322,10 @@ "typeString": "address" }, "typeName": { - "id": 231, + "id": 187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3340:7:0", + "src": "2517:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3941,12 +3336,12 @@ }, { "constant": false, - "id": 234, + "id": 190, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3354:10:0", + "scope": 194, + "src": "2531:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3954,10 +3349,10 @@ "typeString": "uint256" }, "typeName": { - "id": 233, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3354:4:0", + "src": "2531:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3968,12 +3363,12 @@ }, { "constant": false, - "id": 236, + "id": 192, "indexed": false, "name": "newTotalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3366:25:0", + "scope": 194, + "src": "2543:25:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3981,10 +3376,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 191, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3366:7:0", + "src": "2543:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3994,28 +3389,28 @@ "visibility": "internal" } ], - "src": "3339:53:0" + "src": "2516:53:0" }, - "src": "3325:68:0" + "src": "2502:68:0" }, { "anonymous": false, "documentation": null, - "id": 248, + "id": 204, "name": "TokenWithdraw", "nodeType": "EventDefinition", "parameters": { - "id": 247, + "id": 203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 196, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3418:12:0", + "scope": 204, + "src": "2595:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4023,10 +3418,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 195, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3418:7:0", + "src": "2595:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4037,12 +3432,12 @@ }, { "constant": false, - "id": 242, + "id": 198, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3432:10:0", + "scope": 204, + "src": "2609:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4050,10 +3445,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 197, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3432:4:0", + "src": "2609:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4064,12 +3459,12 @@ }, { "constant": false, - "id": 244, + "id": 200, "indexed": false, "name": "token", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3444:13:0", + "scope": 204, + "src": "2621:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4077,10 +3472,10 @@ "typeString": "address" }, "typeName": { - "id": 243, + "id": 199, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3444:7:0", + "src": "2621:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4091,12 +3486,12 @@ }, { "constant": false, - "id": 246, + "id": 202, "indexed": false, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3459:11:0", + "scope": 204, + "src": "2636:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4104,10 +3499,10 @@ "typeString": "uint256" }, "typeName": { - "id": 245, + "id": 201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3459:4:0", + "src": "2636:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4117,28 +3512,28 @@ "visibility": "internal" } ], - "src": "3417:54:0" + "src": "2594:54:0" }, - "src": "3398:74:0" + "src": "2575:74:0" }, { "anonymous": false, "documentation": null, - "id": 256, + "id": 212, "name": "AddShare", "nodeType": "EventDefinition", "parameters": { - "id": 255, + "id": 211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 250, + "id": 206, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3492:11:0", + "scope": 212, + "src": "2669:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4146,10 +3541,10 @@ "typeString": "address" }, "typeName": { - "id": 249, + "id": 205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "2669:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4160,12 +3555,12 @@ }, { "constant": false, - "id": 252, + "id": 208, "indexed": false, "name": "addedShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3505:19:0", + "scope": 212, + "src": "2682:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4173,10 +3568,10 @@ "typeString": "uint256" }, "typeName": { - "id": 251, + "id": 207, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3505:7:0", + "src": "2682:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4187,12 +3582,12 @@ }, { "constant": false, - "id": 254, + "id": 210, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3526:22:0", + "scope": 212, + "src": "2703:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4200,10 +3595,10 @@ "typeString": "uint256" }, "typeName": { - "id": 253, + "id": 209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3526:7:0", + "src": "2703:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4213,28 +3608,28 @@ "visibility": "internal" } ], - "src": "3491:58:0" + "src": "2668:58:0" }, - "src": "3477:73:0" + "src": "2654:73:0" }, { "anonymous": false, "documentation": null, - "id": 264, + "id": 220, "name": "RemoveShare", "nodeType": "EventDefinition", "parameters": { - "id": 263, + "id": 219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 258, + "id": 214, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3573:11:0", + "scope": 220, + "src": "2750:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4242,10 +3637,10 @@ "typeString": "address" }, "typeName": { - "id": 257, + "id": 213, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3573:7:0", + "src": "2750:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4256,12 +3651,12 @@ }, { "constant": false, - "id": 260, + "id": 216, "indexed": false, "name": "removedShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3586:21:0", + "scope": 220, + "src": "2763:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4269,10 +3664,10 @@ "typeString": "uint256" }, "typeName": { - "id": 259, + "id": 215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "2763:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4283,12 +3678,12 @@ }, { "constant": false, - "id": 262, + "id": 218, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3609:22:0", + "scope": 220, + "src": "2786:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4296,10 +3691,10 @@ "typeString": "uint256" }, "typeName": { - "id": 261, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3609:7:0", + "src": "2786:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4309,28 +3704,28 @@ "visibility": "internal" } ], - "src": "3572:60:0" + "src": "2749:60:0" }, - "src": "3555:78:0" + "src": "2732:78:0" }, { "anonymous": false, "documentation": null, - "id": 272, + "id": 228, "name": "ChangePrivilege", "nodeType": "EventDefinition", "parameters": { - "id": 271, + "id": 227, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 266, + "id": 222, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3660:11:0", + "scope": 228, + "src": "2837:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4338,10 +3733,10 @@ "typeString": "address" }, "typeName": { - "id": 265, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3660:7:0", + "src": "2837:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4352,12 +3747,12 @@ }, { "constant": false, - "id": 268, + "id": 224, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3673:13:0", + "scope": 228, + "src": "2850:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4365,10 +3760,10 @@ "typeString": "bool" }, "typeName": { - "id": 267, + "id": 223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3673:4:0", + "src": "2850:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4379,12 +3774,12 @@ }, { "constant": false, - "id": 270, + "id": 226, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3688:13:0", + "scope": 228, + "src": "2865:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4392,10 +3787,10 @@ "typeString": "bool" }, "typeName": { - "id": 269, + "id": 225, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3688:4:0", + "src": "2865:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4405,28 +3800,28 @@ "visibility": "internal" } ], - "src": "3659:43:0" + "src": "2836:43:0" }, - "src": "3638:65:0" + "src": "2815:65:0" }, { "anonymous": false, "documentation": null, - "id": 278, + "id": 234, "name": "ChangeContractName", "nodeType": "EventDefinition", "parameters": { - "id": 277, + "id": 233, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 274, + "id": 230, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3733:15:0", + "scope": 234, + "src": "2910:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4434,10 +3829,10 @@ "typeString": "string" }, "typeName": { - "id": 273, + "id": 229, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3733:6:0", + "src": "2910:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4448,12 +3843,12 @@ }, { "constant": false, - "id": 276, + "id": 232, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3750:15:0", + "scope": 234, + "src": "2927:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4461,10 +3856,10 @@ "typeString": "string" }, "typeName": { - "id": 275, + "id": 231, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3750:6:0", + "src": "2927:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4474,28 +3869,28 @@ "visibility": "internal" } ], - "src": "3732:34:0" + "src": "2909:34:0" }, - "src": "3708:59:0" + "src": "2885:59:0" }, { "anonymous": false, "documentation": null, - "id": 286, + "id": 242, "name": "ChangeMemberName", "nodeType": "EventDefinition", "parameters": { - "id": 285, + "id": 241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 280, + "id": 236, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3795:11:0", + "scope": 242, + "src": "2972:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4503,10 +3898,10 @@ "typeString": "address" }, "typeName": { - "id": 279, + "id": 235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3795:7:0", + "src": "2972:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4517,12 +3912,12 @@ }, { "constant": false, - "id": 282, + "id": 238, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3808:15:0", + "scope": 242, + "src": "2985:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4530,10 +3925,10 @@ "typeString": "string" }, "typeName": { - "id": 281, + "id": 237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3808:6:0", + "src": "2985:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4544,12 +3939,12 @@ }, { "constant": false, - "id": 284, + "id": 240, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3825:15:0", + "scope": 242, + "src": "3002:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4557,10 +3952,10 @@ "typeString": "string" }, "typeName": { - "id": 283, + "id": 239, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3825:6:0", + "src": "3002:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4570,28 +3965,28 @@ "visibility": "internal" } ], - "src": "3794:47:0" + "src": "2971:47:0" }, - "src": "3772:70:0" + "src": "2949:70:0" }, { "anonymous": false, "documentation": null, - "id": 294, + "id": 250, "name": "ChangeSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 293, + "id": 249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 244, "indexed": false, "name": "contractBalance", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3873:23:0", + "scope": 250, + "src": "3050:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4599,10 +3994,10 @@ "typeString": "uint256" }, "typeName": { - "id": 287, + "id": 243, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3873:7:0", + "src": "3050:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4613,12 +4008,12 @@ }, { "constant": false, - "id": 290, + "id": 246, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3898:16:0", + "scope": 250, + "src": "3075:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4626,10 +4021,10 @@ "typeString": "uint256" }, "typeName": { - "id": 289, + "id": 245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3898:7:0", + "src": "3075:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4640,12 +4035,12 @@ }, { "constant": false, - "id": 292, + "id": 248, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3916:16:0", + "scope": 250, + "src": "3093:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4653,10 +4048,10 @@ "typeString": "uint256" }, "typeName": { - "id": 291, + "id": 247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3916:7:0", + "src": "3093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4666,28 +4061,28 @@ "visibility": "internal" } ], - "src": "3872:61:0" + "src": "3049:61:0" }, - "src": "3847:87:0" + "src": "3024:87:0" }, { "anonymous": false, "documentation": null, - "id": 304, + "id": 260, "name": "WithdrawSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 303, + "id": 259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 296, + "id": 252, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3967:12:0", + "scope": 260, + "src": "3144:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4695,10 +4090,10 @@ "typeString": "address" }, "typeName": { - "id": 295, + "id": 251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3967:7:0", + "src": "3144:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4709,12 +4104,12 @@ }, { "constant": false, - "id": 298, + "id": 254, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3981:10:0", + "scope": 260, + "src": "3158:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4722,10 +4117,10 @@ "typeString": "address" }, "typeName": { - "id": 297, + "id": 253, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3981:7:0", + "src": "3158:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4736,12 +4131,12 @@ }, { "constant": false, - "id": 300, + "id": 256, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3993:10:0", + "scope": 260, + "src": "3170:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4749,10 +4144,10 @@ "typeString": "uint256" }, "typeName": { - "id": 299, + "id": 255, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3993:4:0", + "src": "3170:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4763,12 +4158,12 @@ }, { "constant": false, - "id": 302, + "id": 258, "indexed": false, "name": "newSharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "4005:33:0", + "scope": 260, + "src": "3182:33:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4776,10 +4171,10 @@ "typeString": "uint256" }, "typeName": { - "id": 301, + "id": 257, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4005:7:0", + "src": "3182:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4789,15 +4184,15 @@ "visibility": "internal" } ], - "src": "3966:73:0" + "src": "3143:73:0" }, - "src": "3939:101:0" + "src": "3116:101:0" }, { "body": { - "id": 314, + "id": 270, "nodeType": "Block", - "src": "4126:47:0", + "src": "3303:47:0", "statements": [ { "expression": { @@ -4807,18 +4202,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 308, + "id": 264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4144:3:0", + "referencedDeclaration": 1500, + "src": "3321:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 309, + "id": 265, "isConstant": false, "isLValue": false, "isPure": false, @@ -4826,7 +4221,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4144:10:0", + "src": "3321:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4836,18 +4231,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 310, + "id": 266, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4156:3:0", + "referencedDeclaration": 1500, + "src": "3333:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 311, + "id": 267, "isConstant": false, "isLValue": false, "isPure": false, @@ -4855,7 +4250,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4156:9:0", + "src": "3333:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4873,18 +4268,18 @@ "typeString": "uint256" } ], - "id": 307, + "id": 263, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 230, - "src": "4136:7:0", + "referencedDeclaration": 186, + "src": "3313:7:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 312, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -4892,20 +4287,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4136:30:0", + "src": "3313:30:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 313, + "id": 269, "nodeType": "ExpressionStatement", - "src": "4136:30:0" + "src": "3313:30:0" } ] }, "documentation": null, - "id": 315, + "id": 271, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4913,29 +4308,29 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 305, + "id": 261, "nodeType": "ParameterList", "parameters": [], - "src": "4108:2:0" + "src": "3285:2:0" }, "payable": true, "returnParameters": { - "id": 306, + "id": 262, "nodeType": "ParameterList", "parameters": [], - "src": "4126:0:0" + "src": "3303:0:0" }, - "scope": 1194, - "src": "4099:74:0", + "scope": 1146, + "src": "3276:74:0", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 333, + "id": 289, "nodeType": "Block", - "src": "4200:95:0", + "src": "3377:95:0", "statements": [ { "condition": { @@ -4944,7 +4339,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 327, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, @@ -4955,7 +4350,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 320, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -4964,18 +4359,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 317, + "id": 273, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4215:3:0", + "referencedDeclaration": 1500, + "src": "3392:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 318, + "id": 274, "isConstant": false, "isLValue": false, "isPure": false, @@ -4983,7 +4378,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4215:10:0", + "src": "3392:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4993,18 +4388,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 319, + "id": 275, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "4229:5:0", + "referencedDeclaration": 5, + "src": "3406:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4215:19:0", + "src": "3392:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5014,7 +4409,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 326, + "id": 282, "isConstant": false, "isLValue": false, "isPure": false, @@ -5022,41 +4417,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4238:26:0", + "src": "3415:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 321, + "id": 277, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4239:7:0", + "referencedDeclaration": 73, + "src": "3416:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 324, + "id": 280, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 322, + "id": 278, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4247:3:0", + "referencedDeclaration": 1500, + "src": "3424:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 323, + "id": 279, "isConstant": false, "isLValue": false, "isPure": false, @@ -5064,7 +4459,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4247:10:0", + "src": "3424:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5075,21 +4470,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4239:19:0", + "src": "3416:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 325, + "id": 281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "4239:25:0", + "referencedDeclaration": 80, + "src": "3416:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5100,37 +4495,37 @@ "typeString": "bool" } }, - "src": "4215:49:0", + "src": "3392:49:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 331, + "id": 287, "nodeType": "IfStatement", - "src": "4211:63:0", + "src": "3388:63:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 328, + "id": 284, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4266:6:0", + "referencedDeclaration": 1505, + "src": "3443:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 329, + "id": 285, "isConstant": false, "isLValue": false, "isPure": false, @@ -5138,47 +4533,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4266:8:0", + "src": "3443:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 330, + "id": 286, "nodeType": "ExpressionStatement", - "src": "4266:8:0" + "src": "3443:8:0" } }, { - "id": 332, + "id": 288, "nodeType": "PlaceholderStatement", - "src": "4287:1:0" + "src": "3464:1:0" } ] }, "documentation": null, - "id": 334, + "id": 290, "name": "onlyAdmin", "nodeType": "ModifierDefinition", "parameters": { - "id": 316, + "id": 272, "nodeType": "ParameterList", "parameters": [], - "src": "4197:2:0" + "src": "3374:2:0" }, - "src": "4179:116:0", + "src": "3356:116:0", "visibility": "internal" }, { "body": { - "id": 348, + "id": 304, "nodeType": "Block", - "src": "4336:64:0", + "src": "3513:64:0", "statements": [ { "condition": { "argumentTypes": null, - "id": 342, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -5186,33 +4581,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4351:20:0", + "src": "3528:20:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 338, + "id": 294, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4352:7:0", + "referencedDeclaration": 73, + "src": "3529:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 340, + "id": 296, "indexExpression": { "argumentTypes": null, - "id": 339, + "id": 295, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "4360:3:0", + "referencedDeclaration": 292, + "src": "3537:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5223,21 +4618,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4352:12:0", + "src": "3529:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 341, + "id": 297, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "4352:19:0", + "referencedDeclaration": 78, + "src": "3529:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5249,30 +4644,30 @@ } }, "falseBody": null, - "id": 346, + "id": 302, "nodeType": "IfStatement", - "src": "4347:34:0", + "src": "3524:34:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 343, + "id": 299, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4373:6:0", + "referencedDeclaration": 1505, + "src": "3550:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 344, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -5280,39 +4675,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4373:8:0", + "src": "3550:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 345, + "id": 301, "nodeType": "ExpressionStatement", - "src": "4373:8:0" + "src": "3550:8:0" } }, { - "id": 347, + "id": 303, "nodeType": "PlaceholderStatement", - "src": "4392:1:0" + "src": "3569:1:0" } ] }, "documentation": null, - "id": 349, + "id": 305, "name": "onlyExisting", "nodeType": "ModifierDefinition", "parameters": { - "id": 337, + "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 336, + "id": 292, "name": "who", "nodeType": "VariableDeclaration", - "scope": 349, - "src": "4323:11:0", + "scope": 305, + "src": "3500:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5320,10 +4715,10 @@ "typeString": "address" }, "typeName": { - "id": 335, + "id": 291, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4323:7:0", + "src": "3500:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5333,34 +4728,34 @@ "visibility": "internal" } ], - "src": "4322:13:0" + "src": "3499:13:0" }, - "src": "4301:99:0", + "src": "3478:99:0", "visibility": "internal" }, { "body": { - "id": 357, + "id": 313, "nodeType": "Block", - "src": "4514:41:0", + "src": "3691:41:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 354, + "id": 310, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4531:10:0", + "referencedDeclaration": 76, + "src": "3708:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 355, + "id": 311, "isConstant": false, "isLValue": true, "isPure": false, @@ -5368,21 +4763,21 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4531:17:0", + "src": "3708:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 353, - "id": 356, + "functionReturnParameters": 309, + "id": 312, "nodeType": "Return", - "src": "4524:24:0" + "src": "3701:24:0" } ] }, "documentation": null, - "id": 358, + "id": 314, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5390,23 +4785,23 @@ "name": "getMemberCount", "nodeType": "FunctionDefinition", "parameters": { - "id": 350, + "id": 306, "nodeType": "ParameterList", "parameters": [], - "src": "4481:2:0" + "src": "3658:2:0" }, "payable": false, "returnParameters": { - "id": 353, + "id": 309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 352, + "id": 308, "name": "", "nodeType": "VariableDeclaration", - "scope": 358, - "src": "4508:4:0", + "scope": 314, + "src": "3685:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5414,10 +4809,10 @@ "typeString": "uint256" }, "typeName": { - "id": 351, + "id": 307, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4508:4:0", + "src": "3685:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5427,45 +4822,45 @@ "visibility": "internal" } ], - "src": "4507:6:0" + "src": "3684:6:0" }, - "scope": 1194, - "src": "4458:97:0", + "scope": 1146, + "src": "3635:97:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 369, + "id": 325, "nodeType": "Block", - "src": "4632:39:0", + "src": "3809:39:0", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 321, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4649:10:0", + "referencedDeclaration": 76, + "src": "3826:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 367, + "id": 323, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 322, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "4660:3:0", + "referencedDeclaration": 316, + "src": "3837:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5476,21 +4871,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4649:15:0", + "src": "3826:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 364, - "id": 368, + "functionReturnParameters": 320, + "id": 324, "nodeType": "Return", - "src": "4642:22:0" + "src": "3819:22:0" } ] }, "documentation": null, - "id": 370, + "id": 326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5498,16 +4893,16 @@ "name": "getMemberAtKey", "nodeType": "FunctionDefinition", "parameters": { - "id": 361, + "id": 317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 360, + "id": 316, "name": "key", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4589:8:0", + "scope": 326, + "src": "3766:8:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5515,10 +4910,10 @@ "typeString": "uint256" }, "typeName": { - "id": 359, + "id": 315, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4589:4:0", + "src": "3766:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5528,20 +4923,20 @@ "visibility": "internal" } ], - "src": "4588:10:0" + "src": "3765:10:0" }, "payable": false, "returnParameters": { - "id": 364, + "id": 320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 363, + "id": 319, "name": "", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4623:7:0", + "scope": 326, + "src": "3800:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5549,10 +4944,10 @@ "typeString": "address" }, "typeName": { - "id": 362, + "id": 318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4623:7:0", + "src": "3800:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5562,37 +4957,37 @@ "visibility": "internal" } ], - "src": "4622:9:0" + "src": "3799:9:0" }, - "scope": 1194, - "src": "4565:106:0", + "scope": 1146, + "src": "3742:106:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 378, + "id": 334, "nodeType": "Block", - "src": "4744:36:0", + "src": "3921:36:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 375, + "id": 331, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "4761:4:0", + "referencedDeclaration": 1513, + "src": "3938:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 376, + "id": 332, "isConstant": false, "isLValue": false, "isPure": false, @@ -5600,21 +4995,21 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4761:12:0", + "src": "3938:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 374, - "id": 377, + "functionReturnParameters": 330, + "id": 333, "nodeType": "Return", - "src": "4754:19:0" + "src": "3931:19:0" } ] }, "documentation": null, - "id": 379, + "id": 335, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5622,23 +5017,23 @@ "name": "getBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 371, + "id": 327, "nodeType": "ParameterList", "parameters": [], - "src": "4700:2:0" + "src": "3877:2:0" }, "payable": false, "returnParameters": { - "id": 374, + "id": 330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 373, + "id": 329, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 379, - "src": "4727:15:0", + "scope": 335, + "src": "3904:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5646,10 +5041,10 @@ "typeString": "uint256" }, "typeName": { - "id": 372, + "id": 328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4727:7:0", + "src": "3904:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5659,19 +5054,19 @@ "visibility": "internal" } ], - "src": "4726:17:0" + "src": "3903:17:0" }, - "scope": 1194, - "src": "4681:99:0", + "scope": 1146, + "src": "3858:99:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 401, + "id": 357, "nodeType": "Block", - "src": "4945:94:0", + "src": "4122:94:0", "statements": [ { "expression": { @@ -5682,12 +5077,12 @@ "arguments": [ { "argumentTypes": null, - "id": 393, + "id": 349, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4970:4:0", + "referencedDeclaration": 338, + "src": "4147:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -5701,20 +5096,20 @@ "typeString": "string memory" } ], - "id": 392, + "id": 348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4963:6:0", + "src": "4140:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": "string" }, - "id": 394, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -5722,7 +5117,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4963:12:0", + "src": "4140:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -5730,12 +5125,12 @@ }, { "argumentTypes": null, - "id": 395, + "id": 351, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4977:5:0", + "referencedDeclaration": 340, + "src": "4154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5743,12 +5138,12 @@ }, { "argumentTypes": null, - "id": 396, + "id": 352, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "4984:18:0", + "referencedDeclaration": 342, + "src": "4161:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5756,12 +5151,12 @@ }, { "argumentTypes": null, - "id": 397, + "id": 353, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "5004:11:0", + "referencedDeclaration": 344, + "src": "4181:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5769,40 +5164,40 @@ }, { "argumentTypes": null, - "id": 398, + "id": 354, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "5017:14:0", + "referencedDeclaration": 346, + "src": "4194:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 399, + "id": 355, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4962:70:0", + "src": "4139:70:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_string_memory_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(string memory,address,uint256,uint256,uint256)" } }, - "functionReturnParameters": 391, - "id": 400, + "functionReturnParameters": 347, + "id": 356, "nodeType": "Return", - "src": "4955:77:0" + "src": "4132:77:0" } ] }, "documentation": null, - "id": 402, + "id": 358, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5810,23 +5205,23 @@ "name": "getContractInfo", "nodeType": "FunctionDefinition", "parameters": { - "id": 380, + "id": 336, "nodeType": "ParameterList", "parameters": [], - "src": "4814:2:0" + "src": "3991:2:0" }, "payable": false, "returnParameters": { - "id": 391, + "id": 347, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 382, + "id": 338, "name": "name", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4841:11:0", + "scope": 358, + "src": "4018:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5834,10 +5229,10 @@ "typeString": "string" }, "typeName": { - "id": 381, + "id": 337, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4841:6:0", + "src": "4018:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5848,11 +5243,11 @@ }, { "constant": false, - "id": 384, + "id": 340, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4854:13:0", + "scope": 358, + "src": "4031:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5860,10 +5255,10 @@ "typeString": "address" }, "typeName": { - "id": 383, + "id": 339, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4854:7:0", + "src": "4031:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5874,11 +5269,11 @@ }, { "constant": false, - "id": 386, + "id": 342, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4870:26:0", + "scope": 358, + "src": "4047:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5886,10 +5281,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 341, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4870:7:0", + "src": "4047:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5900,11 +5295,11 @@ }, { "constant": false, - "id": 388, + "id": 344, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4899:19:0", + "scope": 358, + "src": "4076:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5912,10 +5307,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 343, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4899:7:0", + "src": "4076:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5926,11 +5321,11 @@ }, { "constant": false, - "id": 390, + "id": 346, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4921:22:0", + "scope": 358, + "src": "4098:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5938,10 +5333,10 @@ "typeString": "uint256" }, "typeName": { - "id": 389, + "id": 345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4921:7:0", + "src": "4098:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5951,47 +5346,47 @@ "visibility": "internal" } ], - "src": "4840:104:0" + "src": "4017:104:0" }, - "scope": 1194, - "src": "4790:249:0", + "scope": 1146, + "src": "3967:249:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 434, + "id": 390, "nodeType": "Block", - "src": "5202:111:0", + "src": "4379:111:0", "statements": [ { "assignments": [ - 419 + 375 ], "declarations": [ { "constant": false, - "id": 419, + "id": 375, "name": "m", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5210:15:0", + "scope": 391, + "src": "4387:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 418, + "id": 374, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5210:6:0", + "referencedDeclaration": 91, + "src": "4387:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -5999,31 +5394,31 @@ "visibility": "internal" } ], - "id": 423, + "id": 379, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 420, + "id": 376, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5228:7:0", + "referencedDeclaration": 73, + "src": "4405:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 422, + "id": 378, "indexExpression": { "argumentTypes": null, - "id": 421, + "id": 377, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5236:8:0", + "referencedDeclaration": 360, + "src": "4413:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6034,14 +5429,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5228:17:0", + "src": "4405:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5210:35:0" + "src": "4387:35:0" }, { "expression": { @@ -6051,26 +5446,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 424, + "id": 380, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5261:1:0", + "referencedDeclaration": 375, + "src": "4438:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 425, + "id": 381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5261:7:0", + "referencedDeclaration": 80, + "src": "4438:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6080,26 +5475,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 426, + "id": 382, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5270:1:0", + "referencedDeclaration": 375, + "src": "4447:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 427, + "id": 383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5270:8:0", + "referencedDeclaration": 82, + "src": "4447:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6109,26 +5504,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 428, + "id": 384, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5280:1:0", + "referencedDeclaration": 375, + "src": "4457:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 429, + "id": 385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5280:11:0", + "referencedDeclaration": 84, + "src": "4457:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6138,54 +5533,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 430, + "id": 386, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5293:1:0", + "referencedDeclaration": 375, + "src": "4470:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 431, + "id": 387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "5293:12:0", + "referencedDeclaration": 86, + "src": "4470:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } } ], - "id": 432, + "id": 388, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5260:46:0", + "src": "4437:46:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$_t_uint256_$_t_string_memory_$", "typeString": "tuple(bool,uint256,uint256,string memory)" } }, - "functionReturnParameters": 417, - "id": 433, + "functionReturnParameters": 373, + "id": 389, "nodeType": "Return", - "src": "5253:53:0" + "src": "4430:53:0" } ] }, "documentation": null, - "id": 435, + "id": 391, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -6194,49 +5589,49 @@ "arguments": [ { "argumentTypes": null, - "id": 407, + "id": 363, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5118:8:0", + "referencedDeclaration": 360, + "src": "4295:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 408, + "id": 364, "modifierName": { "argumentTypes": null, - "id": 406, + "id": 362, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5105:12:0", + "referencedDeclaration": 305, + "src": "4282:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "5105:22:0" + "src": "4282:22:0" } ], "name": "returnMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 405, + "id": 361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 404, + "id": 360, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5071:16:0", + "scope": 391, + "src": "4248:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6244,10 +5639,10 @@ "typeString": "address" }, "typeName": { - "id": 403, + "id": 359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5071:7:0", + "src": "4248:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6257,20 +5652,20 @@ "visibility": "internal" } ], - "src": "5070:18:0" + "src": "4247:18:0" }, "payable": false, "returnParameters": { - "id": 417, + "id": 373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 410, + "id": 366, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5136:10:0", + "scope": 391, + "src": "4313:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6278,10 +5673,10 @@ "typeString": "bool" }, "typeName": { - "id": 409, + "id": 365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5136:4:0", + "src": "4313:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6292,11 +5687,11 @@ }, { "constant": false, - "id": 412, + "id": 368, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5148:14:0", + "scope": 391, + "src": "4325:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6304,10 +5699,10 @@ "typeString": "uint256" }, "typeName": { - "id": 411, + "id": 367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5148:7:0", + "src": "4325:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6318,11 +5713,11 @@ }, { "constant": false, - "id": 414, + "id": 370, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5164:17:0", + "scope": 391, + "src": "4341:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6330,10 +5725,10 @@ "typeString": "uint256" }, "typeName": { - "id": 413, + "id": 369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5164:7:0", + "src": "4341:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6344,11 +5739,11 @@ }, { "constant": false, - "id": 416, + "id": 372, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5183:17:0", + "scope": 391, + "src": "4360:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6356,10 +5751,10 @@ "typeString": "string" }, "typeName": { - "id": 415, + "id": 371, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5183:6:0", + "src": "4360:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6369,19 +5764,19 @@ "visibility": "internal" } ], - "src": "5135:66:0" + "src": "4312:66:0" }, - "scope": 1194, - "src": "5049:264:0", + "scope": 1146, + "src": "4226:264:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 451, + "id": 407, "nodeType": "Block", - "src": "5394:200:0", + "src": "4571:61:0", "statements": [ { "expression": { @@ -6392,14 +5787,14 @@ "arguments": [ { "argumentTypes": null, - "id": 447, + "id": 403, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "5442:4:0", + "referencedDeclaration": 1513, + "src": "4619:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } } @@ -6407,24 +5802,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } ], - "id": 446, + "id": 402, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5434:7:0", + "src": "4611:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 448, + "id": 404, "isConstant": false, "isLValue": false, "isPure": false, @@ -6432,7 +5827,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5434:13:0", + "src": "4611:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6451,12 +5846,12 @@ "arguments": [ { "argumentTypes": null, - "id": 443, + "id": 399, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "5417:5:0", + "referencedDeclaration": 393, + "src": "4594:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6470,18 +5865,18 @@ "typeString": "address" } ], - "id": 442, + "id": 398, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "5411:5:0", + "referencedDeclaration": 1213, + "src": "4588:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 444, + "id": 400, "isConstant": false, "isLValue": false, "isPure": false, @@ -6489,27 +5884,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:12:0", + "src": "4588:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 445, + "id": 401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1203, - "src": "5411:22:0", + "referencedDeclaration": 1155, + "src": "4588:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 449, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -6517,21 +5912,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:37:0", + "src": "4588:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 441, - "id": 450, + "functionReturnParameters": 397, + "id": 406, "nodeType": "Return", - "src": "5404:44:0" + "src": "4581:44:0" } ] }, "documentation": null, - "id": 452, + "id": 408, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -6539,16 +5934,16 @@ "name": "checkERC20Balance", "nodeType": "FunctionDefinition", "parameters": { - "id": 438, + "id": 394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 437, + "id": 393, "name": "token", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5346:13:0", + "scope": 408, + "src": "4523:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6556,10 +5951,10 @@ "typeString": "address" }, "typeName": { - "id": 436, + "id": 392, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5346:7:0", + "src": "4523:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6569,20 +5964,20 @@ "visibility": "internal" } ], - "src": "5345:15:0" + "src": "4522:15:0" }, "payable": false, "returnParameters": { - "id": 441, + "id": 397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 440, + "id": 396, "name": "", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5385:7:0", + "scope": 408, + "src": "4562:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6590,10 +5985,10 @@ "typeString": "uint256" }, "typeName": { - "id": 439, + "id": 395, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5385:7:0", + "src": "4562:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6603,19 +5998,19 @@ "visibility": "internal" } ], - "src": "5384:9:0" + "src": "4561:9:0" }, - "scope": 1194, - "src": "5319:275:0", + "scope": 1146, + "src": "4496:136:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 521, + "id": 477, "nodeType": "Block", - "src": "5746:399:0", + "src": "4784:399:0", "statements": [ { "condition": { @@ -6624,26 +6019,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 465, + "id": 421, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5817:7:0", + "referencedDeclaration": 73, + "src": "4855:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 467, + "id": 423, "indexExpression": { "argumentTypes": null, - "id": 466, + "id": 422, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "5825:3:0", + "referencedDeclaration": 410, + "src": "4863:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6654,51 +6049,51 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5817:12:0", + "src": "4855:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 468, + "id": 424, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5817:19:0", + "referencedDeclaration": 78, + "src": "4855:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 472, + "id": 428, "nodeType": "IfStatement", - "src": "5813:33:0", + "src": "4851:33:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 469, + "id": 425, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5838:6:0", + "referencedDeclaration": 1505, + "src": "4876:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 470, + "id": 426, "isConstant": false, "isLValue": false, "isPure": false, @@ -6706,15 +6101,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5838:8:0", + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 427, "nodeType": "ExpressionStatement", - "src": "5838:8:0" + "src": "4876:8:0" } }, { @@ -6724,7 +6119,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 478, + "id": 434, "isConstant": false, "isLValue": false, "isPure": false, @@ -6736,12 +6131,12 @@ "arguments": [ { "argumentTypes": null, - "id": 474, + "id": 430, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "5866:10:0", + "referencedDeclaration": 416, + "src": "4904:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6755,20 +6150,20 @@ "typeString": "string memory" } ], - "id": 473, + "id": 429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5860:5:0", + "src": "4898:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 475, + "id": 431, "isConstant": false, "isLValue": false, "isPure": false, @@ -6776,13 +6171,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5860:17:0", + "src": "4898:17:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 476, + "id": 432, "isConstant": false, "isLValue": false, "isPure": false, @@ -6790,7 +6185,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5860:24:0", + "src": "4898:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6801,14 +6196,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 477, + "id": 433, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5887:2:0", + "src": "4925:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -6816,37 +6211,37 @@ }, "value": "21" }, - "src": "5860:29:0", + "src": "4898:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 482, + "id": 438, "nodeType": "IfStatement", - "src": "5856:43:0", + "src": "4894:43:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 479, + "id": 435, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5891:6:0", + "referencedDeclaration": 1505, + "src": "4929:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 480, + "id": 436, "isConstant": false, "isLValue": false, "isPure": false, @@ -6854,15 +6249,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5891:8:0", + "src": "4929:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 481, + "id": 437, "nodeType": "ExpressionStatement", - "src": "5891:8:0" + "src": "4929:8:0" } }, { @@ -6870,26 +6265,26 @@ "declarations": [ { "constant": false, - "id": 484, + "id": 440, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5910:23:0", + "scope": 478, + "src": "4948:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 483, + "id": 439, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5910:6:0", + "referencedDeclaration": 91, + "src": "4948:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -6897,15 +6292,15 @@ "visibility": "internal" } ], - "id": 485, + "id": 441, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "5910:23:0" + "src": "4948:23:0" }, { "expression": { "argumentTypes": null, - "id": 490, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -6914,26 +6309,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 486, + "id": 442, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5943:9:0", + "referencedDeclaration": 440, + "src": "4981:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 488, + "id": 444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5943:16:0", + "referencedDeclaration": 78, + "src": "4981:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6944,14 +6339,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 489, + "id": 445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5962:4:0", + "src": "5000:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6959,20 +6354,20 @@ }, "value": "true" }, - "src": "5943:23:0", + "src": "4981:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 491, + "id": 447, "nodeType": "ExpressionStatement", - "src": "5943:23:0" + "src": "4981:23:0" }, { "expression": { "argumentTypes": null, - "id": 496, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -6981,26 +6376,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 492, + "id": 448, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5976:9:0", + "referencedDeclaration": 440, + "src": "5014:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 494, + "id": 450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5976:15:0", + "referencedDeclaration": 80, + "src": "5014:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7010,31 +6405,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 495, + "id": 451, "name": "admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "5994:5:0", + "referencedDeclaration": 414, + "src": "5032:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5976:23:0", + "src": "5014:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 497, + "id": 453, "nodeType": "ExpressionStatement", - "src": "5976:23:0" + "src": "5014:23:0" }, { "expression": { "argumentTypes": null, - "id": 502, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, @@ -7043,26 +6438,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 498, + "id": 454, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6009:9:0", + "referencedDeclaration": 440, + "src": "5047:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 500, + "id": 456, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6009:20:0", + "referencedDeclaration": 86, + "src": "5047:20:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -7072,31 +6467,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 501, + "id": 457, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6032:10:0", + "referencedDeclaration": 416, + "src": "5070:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6009:33:0", + "src": "5047:33:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, - "id": 503, + "id": 459, "nodeType": "ExpressionStatement", - "src": "6009:33:0" + "src": "5047:33:0" }, { "expression": { "argumentTypes": null, - "id": 508, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -7105,26 +6500,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 504, + "id": 460, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6053:7:0", + "referencedDeclaration": 73, + "src": "5091:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 506, + "id": 462, "indexExpression": { "argumentTypes": null, - "id": 505, + "id": 461, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6061:3:0", + "referencedDeclaration": 410, + "src": "5099:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7135,9 +6530,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6053:12:0", + "src": "5091:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -7145,26 +6540,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 507, + "id": 463, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6068:9:0", + "referencedDeclaration": 440, + "src": "5106:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "6053:24:0", + "src": "5091:24:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 509, + "id": 465, "nodeType": "ExpressionStatement", - "src": "6053:24:0" + "src": "5091:24:0" }, { "expression": { @@ -7172,12 +6567,12 @@ "arguments": [ { "argumentTypes": null, - "id": 513, + "id": 469, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6103:3:0", + "referencedDeclaration": 410, + "src": "5141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7193,18 +6588,18 @@ ], "expression": { "argumentTypes": null, - "id": 510, + "id": 466, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "6087:10:0", + "referencedDeclaration": 76, + "src": "5125:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 512, + "id": 468, "isConstant": false, "isLValue": false, "isPure": false, @@ -7212,13 +6607,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6087:15:0", + "src": "5125:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 514, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, @@ -7226,15 +6621,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:20:0", + "src": "5125:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 515, + "id": 471, "nodeType": "ExpressionStatement", - "src": "6087:20:0" + "src": "5125:20:0" }, { "expression": { @@ -7242,12 +6637,12 @@ "arguments": [ { "argumentTypes": null, - "id": 517, + "id": 473, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6126:3:0", + "referencedDeclaration": 410, + "src": "5164:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7255,12 +6650,12 @@ }, { "argumentTypes": null, - "id": 518, + "id": 474, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "6131:6:0", + "referencedDeclaration": 412, + "src": "5169:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7278,18 +6673,18 @@ "typeString": "uint256" } ], - "id": 516, + "id": 472, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "6117:8:0", + "referencedDeclaration": 770, + "src": "5155:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 519, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -7297,57 +6692,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:21:0", + "src": "5155:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6117:21:0" + "src": "5155:21:0" } ] }, "documentation": null, - "id": 522, + "id": 478, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 463, + "id": 419, "modifierName": { "argumentTypes": null, - "id": 462, + "id": 418, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "5734:9:0", + "referencedDeclaration": 290, + "src": "4772:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "5734:11:0" + "src": "4772:11:0" } ], "name": "addMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 454, + "id": 410, "name": "who", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5667:11:0", + "scope": 478, + "src": "4705:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7355,10 +6750,10 @@ "typeString": "address" }, "typeName": { - "id": 453, + "id": 409, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5667:7:0", + "src": "4705:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7369,11 +6764,11 @@ }, { "constant": false, - "id": 456, + "id": 412, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5680:14:0", + "scope": 478, + "src": "4718:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7381,10 +6776,10 @@ "typeString": "uint256" }, "typeName": { - "id": 455, + "id": 411, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5680:7:0", + "src": "4718:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7395,11 +6790,11 @@ }, { "constant": false, - "id": 458, + "id": 414, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5696:10:0", + "scope": 478, + "src": "4734:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7407,10 +6802,10 @@ "typeString": "bool" }, "typeName": { - "id": 457, + "id": 413, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5696:4:0", + "src": "4734:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7421,11 +6816,11 @@ }, { "constant": false, - "id": 460, + "id": 416, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5708:17:0", + "scope": 478, + "src": "4746:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7433,10 +6828,10 @@ "typeString": "string" }, "typeName": { - "id": 459, + "id": 415, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5708:6:0", + "src": "4746:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7446,26 +6841,26 @@ "visibility": "internal" } ], - "src": "5666:60:0" + "src": "4704:60:0" }, "payable": false, "returnParameters": { - "id": 464, + "id": 420, "nodeType": "ParameterList", "parameters": [], - "src": "5746:0:0" + "src": "4784:0:0" }, - "scope": 1194, - "src": "5648:497:0", + "scope": 1146, + "src": "4686:497:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 575, + "id": 531, "nodeType": "Block", - "src": "6248:244:0", + "src": "5286:244:0", "statements": [ { "condition": { @@ -7474,7 +6869,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 544, + "id": 500, "isConstant": false, "isLValue": false, "isPure": false, @@ -7488,26 +6883,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 536, + "id": 492, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6267:7:0", + "referencedDeclaration": 73, + "src": "5305:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 538, + "id": 494, "indexExpression": { "argumentTypes": null, - "id": 537, + "id": 493, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6275:3:0", + "referencedDeclaration": 480, + "src": "5313:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7518,21 +6913,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6267:12:0", + "src": "5305:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 539, + "id": 495, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6267:23:0", + "referencedDeclaration": 86, + "src": "5305:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7546,18 +6941,18 @@ "typeString": "string storage ref" } ], - "id": 535, + "id": 491, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6262:4:0", + "referencedDeclaration": 1510, + "src": "5300:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 540, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -7565,7 +6960,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6262:29:0", + "src": "5300:29:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -7578,12 +6973,12 @@ "arguments": [ { "argumentTypes": null, - "id": 542, + "id": 498, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6300:4:0", + "referencedDeclaration": 486, + "src": "5338:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7597,18 +6992,18 @@ "typeString": "string memory" } ], - "id": 541, + "id": 497, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6295:4:0", + "referencedDeclaration": 1510, + "src": "5333:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 543, + "id": 499, "isConstant": false, "isLValue": false, "isPure": false, @@ -7616,34 +7011,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6295:10:0", + "src": "5333:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6262:43:0", + "src": "5300:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 550, + "id": 506, "nodeType": "IfStatement", - "src": "6258:76:0", + "src": "5296:76:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 502, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6324:3:0", + "referencedDeclaration": 480, + "src": "5362:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7651,12 +7046,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 503, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6329:4:0", + "referencedDeclaration": 486, + "src": "5367:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7674,18 +7069,18 @@ "typeString": "string memory" } ], - "id": 545, + "id": 501, "name": "changeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6307:16:0", + "referencedDeclaration": 589, + "src": "5345:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory)" } }, - "id": 548, + "id": 504, "isConstant": false, "isLValue": false, "isPure": false, @@ -7693,15 +7088,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6307:27:0", + "src": "5345:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 549, + "id": 505, "nodeType": "ExpressionStatement", - "src": "6307:27:0" + "src": "5345:27:0" } }, { @@ -7711,7 +7106,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 556, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, @@ -7722,26 +7117,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 551, + "id": 507, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6348:7:0", + "referencedDeclaration": 73, + "src": "5386:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 553, + "id": 509, "indexExpression": { "argumentTypes": null, - "id": 552, + "id": 508, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6356:3:0", + "referencedDeclaration": 480, + "src": "5394:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7752,21 +7147,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6348:12:0", + "src": "5386:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 554, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6348:18:0", + "referencedDeclaration": 80, + "src": "5386:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7776,39 +7171,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 555, + "id": 511, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6370:7:0", + "referencedDeclaration": 484, + "src": "5408:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6348:29:0", + "src": "5386:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 562, + "id": 518, "nodeType": "IfStatement", - "src": "6344:69:0", + "src": "5382:69:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 558, + "id": 514, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6400:3:0", + "referencedDeclaration": 480, + "src": "5438:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7816,12 +7211,12 @@ }, { "argumentTypes": null, - "id": 559, + "id": 515, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6405:7:0", + "referencedDeclaration": 484, + "src": "5443:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7839,18 +7234,18 @@ "typeString": "bool" } ], - "id": 557, + "id": 513, "name": "changeAdminPrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "6379:20:0", + "referencedDeclaration": 615, + "src": "5417:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,bool)" } }, - "id": 560, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, @@ -7858,15 +7253,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6379:34:0", + "src": "5417:34:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 561, + "id": 517, "nodeType": "ExpressionStatement", - "src": "6379:34:0" + "src": "5417:34:0" } }, { @@ -7876,7 +7271,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 568, + "id": 524, "isConstant": false, "isLValue": false, "isPure": false, @@ -7887,26 +7282,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 563, + "id": 519, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6427:7:0", + "referencedDeclaration": 73, + "src": "5465:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 565, + "id": 521, "indexExpression": { "argumentTypes": null, - "id": 564, + "id": 520, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6435:3:0", + "referencedDeclaration": 480, + "src": "5473:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7917,21 +7312,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6427:12:0", + "src": "5465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 566, + "id": 522, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6427:19:0", + "referencedDeclaration": 82, + "src": "5465:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7941,39 +7336,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 567, + "id": 523, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6450:6:0", + "referencedDeclaration": 482, + "src": "5488:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6427:29:0", + "src": "5465:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 574, + "id": 530, "nodeType": "IfStatement", - "src": "6423:62:0", + "src": "5461:62:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 570, + "id": 526, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6473:3:0", + "referencedDeclaration": 480, + "src": "5511:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7981,12 +7376,12 @@ }, { "argumentTypes": null, - "id": 571, + "id": 527, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6478:6:0", + "referencedDeclaration": 482, + "src": "5516:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8004,18 +7399,18 @@ "typeString": "uint256" } ], - "id": 569, + "id": 525, "name": "allocateShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 772, - "src": "6458:14:0", + "referencedDeclaration": 728, + "src": "5496:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 572, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -8023,58 +7418,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6458:27:0", + "src": "5496:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 573, + "id": 529, "nodeType": "ExpressionStatement", - "src": "6458:27:0" + "src": "5496:27:0" } } ] }, "documentation": null, - "id": 576, + "id": 532, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 533, + "id": 489, "modifierName": { "argumentTypes": null, - "id": 532, + "id": 488, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6236:9:0", + "referencedDeclaration": 290, + "src": "5274:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6236:11:0" + "src": "5274:11:0" } ], "name": "updateMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 524, + "id": 480, "name": "who", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6173:11:0", + "scope": 532, + "src": "5211:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8082,10 +7477,10 @@ "typeString": "address" }, "typeName": { - "id": 523, + "id": 479, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6173:7:0", + "src": "5211:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8096,11 +7491,11 @@ }, { "constant": false, - "id": 526, + "id": 482, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6186:14:0", + "scope": 532, + "src": "5224:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8108,10 +7503,10 @@ "typeString": "uint256" }, "typeName": { - "id": 525, + "id": 481, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6186:7:0", + "src": "5224:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8122,11 +7517,11 @@ }, { "constant": false, - "id": 528, + "id": 484, "name": "isAdmin", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6202:12:0", + "scope": 532, + "src": "5240:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8134,10 +7529,10 @@ "typeString": "bool" }, "typeName": { - "id": 527, + "id": 483, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6202:4:0", + "src": "5240:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8148,11 +7543,11 @@ }, { "constant": false, - "id": 530, + "id": 486, "name": "name", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6216:11:0", + "scope": 532, + "src": "5254:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8160,10 +7555,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 485, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6216:6:0", + "src": "5254:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8173,26 +7568,26 @@ "visibility": "internal" } ], - "src": "6172:56:0" + "src": "5210:56:0" }, "payable": false, "returnParameters": { - "id": 534, + "id": 490, "nodeType": "ParameterList", "parameters": [], - "src": "6248:0:0" + "src": "5286:0:0" }, - "scope": 1194, - "src": "6151:341:0", + "scope": 1146, + "src": "5189:341:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 632, + "id": 588, "nodeType": "Block", - "src": "6638:259:0", + "src": "5676:259:0", "statements": [ { "condition": { @@ -8201,7 +7596,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 601, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, @@ -8212,7 +7607,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 594, + "id": 550, "isConstant": false, "isLValue": false, "isPure": false, @@ -8223,7 +7618,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 589, + "id": 545, "isConstant": false, "isLValue": false, "isPure": false, @@ -8232,18 +7627,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 586, + "id": 542, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6652:3:0", + "referencedDeclaration": 1500, + "src": "5690:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 587, + "id": 543, "isConstant": false, "isLValue": false, "isPure": false, @@ -8251,7 +7646,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6652:10:0", + "src": "5690:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8261,18 +7656,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 588, + "id": 544, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6666:3:0", + "referencedDeclaration": 534, + "src": "5704:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6652:17:0", + "src": "5690:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8286,7 +7681,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 593, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -8295,18 +7690,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 590, + "id": 546, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6673:3:0", + "referencedDeclaration": 1500, + "src": "5711:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 591, + "id": 547, "isConstant": false, "isLValue": false, "isPure": false, @@ -8314,7 +7709,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6673:10:0", + "src": "5711:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8324,24 +7719,24 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 592, + "id": 548, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "6687:5:0", + "referencedDeclaration": 5, + "src": "5725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6673:19:0", + "src": "5711:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6652:40:0", + "src": "5690:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8351,7 +7746,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 600, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, @@ -8359,41 +7754,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6696:26:0", + "src": "5734:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 595, + "id": 551, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6697:7:0", + "referencedDeclaration": 73, + "src": "5735:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 598, + "id": 554, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 596, + "id": 552, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6705:3:0", + "referencedDeclaration": 1500, + "src": "5743:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 597, + "id": 553, "isConstant": false, "isLValue": false, "isPure": false, @@ -8401,7 +7796,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6705:10:0", + "src": "5743:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8412,21 +7807,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6697:19:0", + "src": "5735:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 599, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6697:25:0", + "referencedDeclaration": 80, + "src": "5735:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8437,37 +7832,37 @@ "typeString": "bool" } }, - "src": "6652:70:0", + "src": "5690:70:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 605, + "id": 561, "nodeType": "IfStatement", - "src": "6648:84:0", + "src": "5686:84:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 602, + "id": 558, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6724:6:0", + "referencedDeclaration": 1505, + "src": "5762:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 603, + "id": 559, "isConstant": false, "isLValue": false, "isPure": false, @@ -8475,15 +7870,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6724:8:0", + "src": "5762:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 604, + "id": 560, "nodeType": "ExpressionStatement", - "src": "6724:8:0" + "src": "5762:8:0" } }, { @@ -8493,7 +7888,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 611, + "id": 567, "isConstant": false, "isLValue": false, "isPure": false, @@ -8505,12 +7900,12 @@ "arguments": [ { "argumentTypes": null, - "id": 607, + "id": 563, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6752:7:0", + "referencedDeclaration": 536, + "src": "5790:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8524,20 +7919,20 @@ "typeString": "string memory" } ], - "id": 606, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6746:5:0", + "src": "5784:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 608, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, @@ -8545,13 +7940,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6746:14:0", + "src": "5784:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 609, + "id": 565, "isConstant": false, "isLValue": false, "isPure": false, @@ -8559,7 +7954,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6746:21:0", + "src": "5784:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8570,14 +7965,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 610, + "id": 566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6770:2:0", + "src": "5808:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -8585,37 +7980,37 @@ }, "value": "21" }, - "src": "6746:26:0", + "src": "5784:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 615, + "id": 571, "nodeType": "IfStatement", - "src": "6742:40:0", + "src": "5780:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 612, + "id": 568, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6774:6:0", + "referencedDeclaration": 1505, + "src": "5812:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 613, + "id": 569, "isConstant": false, "isLValue": false, "isPure": false, @@ -8623,15 +8018,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6774:8:0", + "src": "5812:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 614, + "id": 570, "nodeType": "ExpressionStatement", - "src": "6774:8:0" + "src": "5812:8:0" } }, { @@ -8640,12 +8035,12 @@ "arguments": [ { "argumentTypes": null, - "id": 617, + "id": 573, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6809:3:0", + "referencedDeclaration": 534, + "src": "5847:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8657,26 +8052,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 618, + "id": 574, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6814:7:0", + "referencedDeclaration": 73, + "src": "5852:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 620, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 619, + "id": 575, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6822:3:0", + "referencedDeclaration": 534, + "src": "5860:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8687,21 +8082,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6814:12:0", + "src": "5852:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 621, + "id": 577, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6814:23:0", + "referencedDeclaration": 86, + "src": "5852:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8709,12 +8104,12 @@ }, { "argumentTypes": null, - "id": 622, + "id": 578, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6839:7:0", + "referencedDeclaration": 536, + "src": "5877:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8736,18 +8131,18 @@ "typeString": "string memory" } ], - "id": 616, + "id": 572, "name": "ChangeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "6792:16:0", + "referencedDeclaration": 242, + "src": "5830:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 623, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, @@ -8755,20 +8150,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6792:55:0", + "src": "5830:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 624, + "id": 580, "nodeType": "ExpressionStatement", - "src": "6792:55:0" + "src": "5830:55:0" }, { "expression": { "argumentTypes": null, - "id": 630, + "id": 586, "isConstant": false, "isLValue": false, "isPure": false, @@ -8779,26 +8174,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 625, + "id": 581, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6857:7:0", + "referencedDeclaration": 73, + "src": "5895:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 627, + "id": 583, "indexExpression": { "argumentTypes": null, - "id": 626, + "id": 582, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6865:3:0", + "referencedDeclaration": 534, + "src": "5903:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8809,21 +8204,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6857:12:0", + "src": "5895:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 628, + "id": 584, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6857:23:0", + "referencedDeclaration": 86, + "src": "5895:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8833,31 +8228,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 629, + "id": 585, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6883:7:0", + "referencedDeclaration": 536, + "src": "5921:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6857:33:0", + "src": "5895:33:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 631, + "id": 587, "nodeType": "ExpressionStatement", - "src": "6857:33:0" + "src": "5895:33:0" } ] }, "documentation": null, - "id": 633, + "id": 589, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -8866,49 +8261,49 @@ "arguments": [ { "argumentTypes": null, - "id": 583, + "id": 539, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6633:3:0", + "referencedDeclaration": 534, + "src": "5671:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 584, + "id": 540, "modifierName": { "argumentTypes": null, - "id": 582, + "id": 538, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "6620:12:0", + "referencedDeclaration": 305, + "src": "5658:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6620:17:0" + "src": "5658:17:0" } ], "name": "changeMemberName", "nodeType": "FunctionDefinition", "parameters": { - "id": 581, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 578, + "id": 534, "name": "who", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6584:11:0", + "scope": 589, + "src": "5622:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8916,10 +8311,10 @@ "typeString": "address" }, "typeName": { - "id": 577, + "id": 533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6584:7:0", + "src": "5622:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8930,11 +8325,11 @@ }, { "constant": false, - "id": 580, + "id": 536, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6597:14:0", + "scope": 589, + "src": "5635:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8942,10 +8337,10 @@ "typeString": "string" }, "typeName": { - "id": 579, + "id": 535, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6597:6:0", + "src": "5635:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8955,26 +8350,26 @@ "visibility": "internal" } ], - "src": "6583:29:0" + "src": "5621:29:0" }, "payable": false, "returnParameters": { - "id": 585, + "id": 541, "nodeType": "ParameterList", "parameters": [], - "src": "6638:0:0" + "src": "5676:0:0" }, - "scope": 1194, - "src": "6558:339:0", + "scope": 1146, + "src": "5596:339:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 658, + "id": 614, "nodeType": "Block", - "src": "6980:107:0", + "src": "6018:107:0", "statements": [ { "expression": { @@ -8982,12 +8377,12 @@ "arguments": [ { "argumentTypes": null, - "id": 643, + "id": 599, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7006:3:0", + "referencedDeclaration": 591, + "src": "6044:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8999,26 +8394,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 644, + "id": 600, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7011:7:0", + "referencedDeclaration": 73, + "src": "6049:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 646, + "id": 602, "indexExpression": { "argumentTypes": null, - "id": 645, + "id": 601, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7019:3:0", + "referencedDeclaration": 591, + "src": "6057:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9029,21 +8424,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7011:12:0", + "src": "6049:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 647, + "id": 603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7011:18:0", + "referencedDeclaration": 80, + "src": "6049:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9051,12 +8446,12 @@ }, { "argumentTypes": null, - "id": 648, + "id": 604, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7031:8:0", + "referencedDeclaration": 593, + "src": "6069:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9078,18 +8473,18 @@ "typeString": "bool" } ], - "id": 642, + "id": 598, "name": "ChangePrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 272, - "src": "6990:15:0", + "referencedDeclaration": 228, + "src": "6028:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,bool,bool)" } }, - "id": 649, + "id": 605, "isConstant": false, "isLValue": false, "isPure": false, @@ -9097,20 +8492,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6990:50:0", + "src": "6028:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 650, + "id": 606, "nodeType": "ExpressionStatement", - "src": "6990:50:0" + "src": "6028:50:0" }, { "expression": { "argumentTypes": null, - "id": 656, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, @@ -9121,26 +8516,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 651, + "id": 607, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7050:7:0", + "referencedDeclaration": 73, + "src": "6088:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 653, + "id": 609, "indexExpression": { "argumentTypes": null, - "id": 652, + "id": 608, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7058:3:0", + "referencedDeclaration": 591, + "src": "6096:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9151,21 +8546,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7050:12:0", + "src": "6088:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 654, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7050:18:0", + "referencedDeclaration": 80, + "src": "6088:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9175,68 +8570,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 655, + "id": 611, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7071:8:0", + "referencedDeclaration": 593, + "src": "6109:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7050:29:0", + "src": "6088:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 657, + "id": 613, "nodeType": "ExpressionStatement", - "src": "7050:29:0" + "src": "6088:29:0" } ] }, "documentation": null, - "id": 659, + "id": 615, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 640, + "id": 596, "modifierName": { "argumentTypes": null, - "id": 639, + "id": 595, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6968:9:0", + "referencedDeclaration": 290, + "src": "6006:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6968:11:0" + "src": "6006:11:0" } ], "name": "changeAdminPrivilege", "nodeType": "FunctionDefinition", "parameters": { - "id": 638, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 635, + "id": 591, "name": "who", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6933:11:0", + "scope": 615, + "src": "5971:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9244,10 +8639,10 @@ "typeString": "address" }, "typeName": { - "id": 634, + "id": 590, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6933:7:0", + "src": "5971:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9258,11 +8653,11 @@ }, { "constant": false, - "id": 637, + "id": 593, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6946:13:0", + "scope": 615, + "src": "5984:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9270,10 +8665,10 @@ "typeString": "bool" }, "typeName": { - "id": 636, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6946:4:0", + "src": "5984:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -9283,26 +8678,26 @@ "visibility": "internal" } ], - "src": "6932:28:0" + "src": "5970:28:0" }, "payable": false, "returnParameters": { - "id": 641, + "id": 597, "nodeType": "ParameterList", "parameters": [], - "src": "6980:0:0" + "src": "6018:0:0" }, - "scope": 1194, - "src": "6903:184:0", + "scope": 1146, + "src": "5941:184:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 685, + "id": 641, "nodeType": "Block", - "src": "7215:124:0", + "src": "6253:124:0", "statements": [ { "condition": { @@ -9311,7 +8706,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 671, + "id": 627, "isConstant": false, "isLValue": false, "isPure": false, @@ -9323,12 +8718,12 @@ "arguments": [ { "argumentTypes": null, - "id": 667, + "id": 623, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7235:7:0", + "referencedDeclaration": 617, + "src": "6273:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -9342,20 +8737,20 @@ "typeString": "string memory" } ], - "id": 666, + "id": 622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7229:5:0", + "src": "6267:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 668, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -9363,13 +8758,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7229:14:0", + "src": "6267:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 669, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -9377,7 +8772,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7229:21:0", + "src": "6267:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9388,14 +8783,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 670, + "id": 626, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7253:2:0", + "src": "6291:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -9403,37 +8798,37 @@ }, "value": "21" }, - "src": "7229:26:0", + "src": "6267:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 675, + "id": 631, "nodeType": "IfStatement", - "src": "7225:40:0", + "src": "6263:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 672, + "id": 628, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7257:6:0", + "referencedDeclaration": 1505, + "src": "6295:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 673, + "id": 629, "isConstant": false, "isLValue": false, "isPure": false, @@ -9441,15 +8836,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7257:8:0", + "src": "6295:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 674, + "id": 630, "nodeType": "ExpressionStatement", - "src": "7257:8:0" + "src": "6295:8:0" } }, { @@ -9458,12 +8853,12 @@ "arguments": [ { "argumentTypes": null, - "id": 677, + "id": 633, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7294:4:0", + "referencedDeclaration": 56, + "src": "6332:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -9471,12 +8866,12 @@ }, { "argumentTypes": null, - "id": 678, + "id": 634, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7300:7:0", + "referencedDeclaration": 617, + "src": "6338:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -9494,18 +8889,18 @@ "typeString": "string memory" } ], - "id": 676, + "id": 632, "name": "ChangeContractName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 278, - "src": "7275:18:0", + "referencedDeclaration": 234, + "src": "6313:18:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, - "id": 679, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, @@ -9513,32 +8908,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7275:33:0", + "src": "6313:33:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 680, + "id": 636, "nodeType": "ExpressionStatement", - "src": "7275:33:0" + "src": "6313:33:0" }, { "expression": { "argumentTypes": null, - "id": 683, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 681, + "id": 637, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7318:4:0", + "referencedDeclaration": 56, + "src": "6356:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -9548,68 +8943,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 682, + "id": 638, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7325:7:0", + "referencedDeclaration": 617, + "src": "6363:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "7318:14:0", + "src": "6356:14:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 684, + "id": 640, "nodeType": "ExpressionStatement", - "src": "7318:14:0" + "src": "6356:14:0" } ] }, "documentation": null, - "id": 686, + "id": 642, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 664, + "id": 620, "modifierName": { "argumentTypes": null, - "id": 663, + "id": 619, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "7203:9:0", + "referencedDeclaration": 290, + "src": "6241:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7203:11:0" + "src": "6241:11:0" } ], "name": "changeContractName", "nodeType": "FunctionDefinition", "parameters": { - "id": 662, + "id": 618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 661, + "id": 617, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 686, - "src": "7180:14:0", + "scope": 642, + "src": "6218:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9617,10 +9012,10 @@ "typeString": "string" }, "typeName": { - "id": 660, + "id": 616, "name": "string", "nodeType": "ElementaryTypeName", - "src": "7180:6:0", + "src": "6218:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -9630,26 +9025,26 @@ "visibility": "internal" } ], - "src": "7179:16:0" + "src": "6217:16:0" }, "payable": false, "returnParameters": { - "id": 665, + "id": 621, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:0" + "src": "6253:0:0" }, - "scope": 1194, - "src": "7152:187:0", + "scope": 1146, + "src": "6190:187:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 722, + "id": 678, "nodeType": "Block", - "src": "7653:262:0", + "src": "6691:262:0", "statements": [ { "condition": { @@ -9658,19 +9053,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 695, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 693, + "id": 649, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7667:13:0", + "referencedDeclaration": 644, + "src": "6705:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9680,48 +9075,48 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 694, + "id": 650, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7683:22:0", + "referencedDeclaration": 69, + "src": "6721:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7667:38:0", + "src": "6705:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 699, + "id": 655, "nodeType": "IfStatement", - "src": "7663:52:0", + "src": "6701:52:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 696, + "id": 652, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7707:6:0", + "referencedDeclaration": 1505, + "src": "6745:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 697, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -9729,15 +9124,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7707:8:0", + "src": "6745:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 698, + "id": 654, "nodeType": "ExpressionStatement", - "src": "7707:8:0" + "src": "6745:8:0" } }, { @@ -9747,7 +9142,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 706, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, @@ -9757,12 +9152,12 @@ "arguments": [ { "argumentTypes": null, - "id": 702, + "id": 658, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7747:22:0", + "referencedDeclaration": 69, + "src": "6785:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9778,32 +9173,32 @@ ], "expression": { "argumentTypes": null, - "id": 700, + "id": 656, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7729:13:0", + "referencedDeclaration": 644, + "src": "6767:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 701, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "7729:17:0", + "referencedDeclaration": 1281, + "src": "6767:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 703, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, @@ -9811,7 +9206,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7729:41:0", + "src": "6767:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9823,18 +9218,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 704, + "id": 660, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7773:4:0", + "referencedDeclaration": 1513, + "src": "6811:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 705, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -9842,43 +9237,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7773:12:0", + "src": "6811:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7729:56:0", + "src": "6767:56:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 710, + "id": 666, "nodeType": "IfStatement", - "src": "7725:70:0", + "src": "6763:70:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 707, + "id": 663, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7787:6:0", + "referencedDeclaration": 1505, + "src": "6825:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 708, + "id": 664, "isConstant": false, "isLValue": false, "isPure": false, @@ -9886,15 +9281,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7787:8:0", + "src": "6825:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 709, + "id": 665, "nodeType": "ExpressionStatement", - "src": "7787:8:0" + "src": "6825:8:0" } }, { @@ -9905,18 +9300,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 712, + "id": 668, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7826:4:0", + "referencedDeclaration": 1513, + "src": "6864:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 713, + "id": 669, "isConstant": false, "isLValue": false, "isPure": false, @@ -9924,7 +9319,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7826:12:0", + "src": "6864:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9932,12 +9327,12 @@ }, { "argumentTypes": null, - "id": 714, + "id": 670, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7840:13:0", + "referencedDeclaration": 67, + "src": "6878:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9945,12 +9340,12 @@ }, { "argumentTypes": null, - "id": 715, + "id": 671, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7855:13:0", + "referencedDeclaration": 644, + "src": "6893:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9972,18 +9367,18 @@ "typeString": "uint256" } ], - "id": 711, + "id": 667, "name": "ChangeSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 294, - "src": "7806:19:0", + "referencedDeclaration": 250, + "src": "6844:19:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 716, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -9991,32 +9386,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7806:63:0", + "src": "6844:63:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 717, + "id": 673, "nodeType": "ExpressionStatement", - "src": "7806:63:0" + "src": "6844:63:0" }, { "expression": { "argumentTypes": null, - "id": 720, + "id": 676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 718, + "id": 674, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7879:13:0", + "referencedDeclaration": 67, + "src": "6917:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10026,68 +9421,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 719, + "id": 675, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7895:13:0", + "referencedDeclaration": 644, + "src": "6933:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7879:29:0", + "src": "6917:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 721, + "id": 677, "nodeType": "ExpressionStatement", - "src": "7879:29:0" + "src": "6917:29:0" } ] }, "documentation": null, - "id": 723, + "id": 679, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 691, + "id": 647, "modifierName": { "argumentTypes": null, - "id": 690, + "id": 646, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "7641:9:0", + "referencedDeclaration": 30, + "src": "6679:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7641:11:0" + "src": "6679:11:0" } ], "name": "changeSharedExpenseAllocation", "nodeType": "FunctionDefinition", "parameters": { - "id": 689, + "id": 645, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 688, + "id": 644, "name": "newAllocation", "nodeType": "VariableDeclaration", - "scope": 723, - "src": "7611:21:0", + "scope": 679, + "src": "6649:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10095,10 +9490,10 @@ "typeString": "uint256" }, "typeName": { - "id": 687, + "id": 643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7611:7:0", + "src": "6649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10108,39 +9503,39 @@ "visibility": "internal" } ], - "src": "7610:23:0" + "src": "6648:23:0" }, "payable": false, "returnParameters": { - "id": 692, + "id": 648, "nodeType": "ParameterList", "parameters": [], - "src": "7653:0:0" + "src": "6691:0:0" }, - "scope": 1194, - "src": "7572:343:0", + "scope": 1146, + "src": "6610:343:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 771, + "id": 727, "nodeType": "Block", - "src": "8108:283:0", + "src": "7146:283:0", "statements": [ { "assignments": [ - 736 + 692 ], "declarations": [ { "constant": false, - "id": 736, + "id": 692, "name": "currentShares", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8118:21:0", + "scope": 728, + "src": "7156:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10148,10 +9543,10 @@ "typeString": "uint256" }, "typeName": { - "id": 735, + "id": 691, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8118:7:0", + "src": "7156:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10161,33 +9556,33 @@ "visibility": "internal" } ], - "id": 741, + "id": 697, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 737, + "id": 693, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8142:7:0", + "referencedDeclaration": 73, + "src": "7180:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 739, + "id": 695, "indexExpression": { "argumentTypes": null, - "id": 738, + "id": 694, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8150:3:0", + "referencedDeclaration": 681, + "src": "7188:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10198,28 +9593,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8142:12:0", + "src": "7180:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 740, + "id": 696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8142:19:0", + "referencedDeclaration": 82, + "src": "7180:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8118:43:0" + "src": "7156:43:0" }, { "condition": { @@ -10228,19 +9623,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 744, + "id": 700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 742, + "id": 698, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8175:6:0", + "referencedDeclaration": 683, + "src": "7213:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10250,48 +9645,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 743, + "id": 699, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8185:13:0", + "referencedDeclaration": 692, + "src": "7223:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8175:23:0", + "src": "7213:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 748, + "id": 704, "nodeType": "IfStatement", - "src": "8171:37:0", + "src": "7209:37:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 745, + "id": 701, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "8200:6:0", + "referencedDeclaration": 1505, + "src": "7238:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 746, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -10299,15 +9694,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8200:8:0", + "src": "7238:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 747, + "id": 703, "nodeType": "ExpressionStatement", - "src": "8200:8:0" + "src": "7238:8:0" } }, { @@ -10317,19 +9712,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 751, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 705, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8222:6:0", + "referencedDeclaration": 683, + "src": "7260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10339,27 +9734,27 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 750, + "id": 706, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8231:13:0", + "referencedDeclaration": 692, + "src": "7269:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8222:22:0", + "src": "7260:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 769, + "id": 725, "nodeType": "Block", - "src": "8317:68:0", + "src": "7355:68:0", "statements": [ { "expression": { @@ -10367,12 +9762,12 @@ "arguments": [ { "argumentTypes": null, - "id": 762, + "id": 718, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8343:3:0", + "referencedDeclaration": 681, + "src": "7381:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10383,12 +9778,12 @@ "arguments": [ { "argumentTypes": null, - "id": 765, + "id": 721, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8366:6:0", + "referencedDeclaration": 683, + "src": "7404:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10404,32 +9799,32 @@ ], "expression": { "argumentTypes": null, - "id": 763, + "id": 719, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8348:13:0", + "referencedDeclaration": 692, + "src": "7386:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 764, + "id": 720, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8348:17:0", + "referencedDeclaration": 1281, + "src": "7386:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 766, + "id": 722, "isConstant": false, "isLValue": false, "isPure": false, @@ -10437,7 +9832,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:25:0", + "src": "7386:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10455,18 +9850,18 @@ "typeString": "uint256" } ], - "id": 761, + "id": 717, "name": "removeShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 856, - "src": "8331:11:0", + "referencedDeclaration": 812, + "src": "7369:11:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 767, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -10474,25 +9869,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8331:43:0", + "src": "7369:43:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 724, "nodeType": "ExpressionStatement", - "src": "8331:43:0" + "src": "7369:43:0" } ] }, - "id": 770, + "id": 726, "nodeType": "IfStatement", - "src": "8218:167:0", + "src": "7256:167:0", "trueBody": { - "id": 760, + "id": 716, "nodeType": "Block", - "src": "8246:65:0", + "src": "7284:65:0", "statements": [ { "expression": { @@ -10500,12 +9895,12 @@ "arguments": [ { "argumentTypes": null, - "id": 753, + "id": 709, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8269:3:0", + "referencedDeclaration": 681, + "src": "7307:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10516,12 +9911,12 @@ "arguments": [ { "argumentTypes": null, - "id": 756, + "id": 712, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8285:13:0", + "referencedDeclaration": 692, + "src": "7323:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10537,32 +9932,32 @@ ], "expression": { "argumentTypes": null, - "id": 754, + "id": 710, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8274:6:0", + "referencedDeclaration": 683, + "src": "7312:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 755, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8274:10:0", + "referencedDeclaration": 1281, + "src": "7312:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 757, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -10570,7 +9965,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8274:25:0", + "src": "7312:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10588,18 +9983,18 @@ "typeString": "uint256" } ], - "id": 752, + "id": 708, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "8260:8:0", + "referencedDeclaration": 770, + "src": "7298:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 758, + "id": 714, "isConstant": false, "isLValue": false, "isPure": false, @@ -10607,15 +10002,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8260:40:0", + "src": "7298:40:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 759, + "id": 715, "nodeType": "ExpressionStatement", - "src": "8260:40:0" + "src": "7298:40:0" } ] } @@ -10623,77 +10018,77 @@ ] }, "documentation": null, - "id": 772, + "id": 728, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 730, + "id": 686, "modifierName": { "argumentTypes": null, - "id": 729, + "id": 685, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8078:9:0", + "referencedDeclaration": 290, + "src": "7116:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8078:11:0" + "src": "7116:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 732, + "id": 688, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8103:3:0", + "referencedDeclaration": 681, + "src": "7141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 733, + "id": 689, "modifierName": { "argumentTypes": null, - "id": 731, + "id": 687, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8090:12:0", + "referencedDeclaration": 305, + "src": "7128:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8090:17:0" + "src": "7128:17:0" } ], "name": "allocateShares", "nodeType": "FunctionDefinition", "parameters": { - "id": 728, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 725, + "id": 681, "name": "who", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8042:11:0", + "scope": 728, + "src": "7080:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10701,10 +10096,10 @@ "typeString": "address" }, "typeName": { - "id": 724, + "id": 680, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8042:7:0", + "src": "7080:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10715,11 +10110,11 @@ }, { "constant": false, - "id": 727, + "id": 683, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8055:14:0", + "scope": 728, + "src": "7093:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10727,10 +10122,10 @@ "typeString": "uint256" }, "typeName": { - "id": 726, + "id": 682, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8055:7:0", + "src": "7093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10740,43 +10135,43 @@ "visibility": "internal" } ], - "src": "8041:29:0" + "src": "7079:29:0" }, "payable": false, "returnParameters": { - "id": 734, + "id": 690, "nodeType": "ParameterList", "parameters": [], - "src": "8108:0:0" + "src": "7146:0:0" }, - "scope": 1194, - "src": "8018:373:0", + "scope": 1146, + "src": "7056:373:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 813, + "id": 769, "nodeType": "Block", - "src": "8532:169:0", + "src": "7570:169:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 789, + "id": 745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 784, + "id": 740, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8542:11:0", + "referencedDeclaration": 58, + "src": "7580:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10789,12 +10184,12 @@ "arguments": [ { "argumentTypes": null, - "id": 787, + "id": 743, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8572:6:0", + "referencedDeclaration": 732, + "src": "7610:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10810,32 +10205,32 @@ ], "expression": { "argumentTypes": null, - "id": 785, + "id": 741, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8556:11:0", + "referencedDeclaration": 58, + "src": "7594:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 786, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8556:15:0", + "referencedDeclaration": 1305, + "src": "7594:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 788, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, @@ -10843,26 +10238,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8556:23:0", + "src": "7594:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8542:37:0", + "src": "7580:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 790, + "id": 746, "nodeType": "ExpressionStatement", - "src": "8542:37:0" + "src": "7580:37:0" }, { "expression": { "argumentTypes": null, - "id": 802, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, @@ -10873,26 +10268,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 791, + "id": 747, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8589:7:0", + "referencedDeclaration": 73, + "src": "7627:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 793, + "id": 749, "indexExpression": { "argumentTypes": null, - "id": 792, + "id": 748, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8597:3:0", + "referencedDeclaration": 730, + "src": "7635:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10903,21 +10298,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8589:12:0", + "src": "7627:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 794, + "id": 750, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8589:19:0", + "referencedDeclaration": 82, + "src": "7627:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10930,12 +10325,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 756, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8635:6:0", + "referencedDeclaration": 732, + "src": "7673:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10955,26 +10350,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 795, + "id": 751, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8611:7:0", + "referencedDeclaration": 73, + "src": "7649:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 797, + "id": 753, "indexExpression": { "argumentTypes": null, - "id": 796, + "id": 752, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8619:3:0", + "referencedDeclaration": 730, + "src": "7657:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10985,41 +10380,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8611:12:0", + "src": "7649:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 798, + "id": 754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8611:19:0", + "referencedDeclaration": 82, + "src": "7649:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 799, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8611:23:0", + "referencedDeclaration": 1305, + "src": "7649:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 801, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -11027,21 +10422,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8611:31:0", + "src": "7649:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8589:53:0", + "src": "7627:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 803, + "id": 759, "nodeType": "ExpressionStatement", - "src": "8589:53:0" + "src": "7627:53:0" }, { "expression": { @@ -11049,12 +10444,12 @@ "arguments": [ { "argumentTypes": null, - "id": 805, + "id": 761, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8661:3:0", + "referencedDeclaration": 730, + "src": "7699:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11062,12 +10457,12 @@ }, { "argumentTypes": null, - "id": 806, + "id": 762, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8666:6:0", + "referencedDeclaration": 732, + "src": "7704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11079,26 +10474,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 807, + "id": 763, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8674:7:0", + "referencedDeclaration": 73, + "src": "7712:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 809, + "id": 765, "indexExpression": { "argumentTypes": null, - "id": 808, + "id": 764, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8682:3:0", + "referencedDeclaration": 730, + "src": "7720:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11109,21 +10504,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8674:12:0", + "src": "7712:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 810, + "id": 766, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8674:19:0", + "referencedDeclaration": 82, + "src": "7712:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11145,18 +10540,18 @@ "typeString": "uint256" } ], - "id": 804, + "id": 760, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "8652:8:0", + "referencedDeclaration": 212, + "src": "7690:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 811, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -11164,90 +10559,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8652:42:0", + "src": "7690:42:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 812, + "id": 768, "nodeType": "ExpressionStatement", - "src": "8652:42:0" + "src": "7690:42:0" } ] }, "documentation": null, - "id": 814, + "id": 770, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 779, + "id": 735, "modifierName": { "argumentTypes": null, - "id": 778, + "id": 734, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8502:9:0", + "referencedDeclaration": 290, + "src": "7540:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8502:11:0" + "src": "7540:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 781, + "id": 737, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8527:3:0", + "referencedDeclaration": 730, + "src": "7565:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 782, + "id": 738, "modifierName": { "argumentTypes": null, - "id": 780, + "id": 736, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8514:12:0", + "referencedDeclaration": 305, + "src": "7552:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8514:17:0" + "src": "7552:17:0" } ], "name": "addShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 777, + "id": 733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 730, "name": "who", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8466:11:0", + "scope": 770, + "src": "7504:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11255,10 +10650,10 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8466:7:0", + "src": "7504:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11269,11 +10664,11 @@ }, { "constant": false, - "id": 776, + "id": 732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8479:14:0", + "scope": 770, + "src": "7517:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11281,10 +10676,10 @@ "typeString": "uint256" }, "typeName": { - "id": 775, + "id": 731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8479:7:0", + "src": "7517:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11294,43 +10689,43 @@ "visibility": "internal" } ], - "src": "8465:29:0" + "src": "7503:29:0" }, "payable": false, "returnParameters": { - "id": 783, + "id": 739, "nodeType": "ParameterList", "parameters": [], - "src": "8532:0:0" + "src": "7570:0:0" }, - "scope": 1194, - "src": "8448:253:0", + "scope": 1146, + "src": "7486:253:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 855, + "id": 811, "nodeType": "Block", - "src": "8845:172:0", + "src": "7883:172:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 831, + "id": 787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 826, + "id": 782, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8855:11:0", + "referencedDeclaration": 58, + "src": "7893:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11343,12 +10738,12 @@ "arguments": [ { "argumentTypes": null, - "id": 829, + "id": 785, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8885:6:0", + "referencedDeclaration": 774, + "src": "7923:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11364,32 +10759,32 @@ ], "expression": { "argumentTypes": null, - "id": 827, + "id": 783, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8869:11:0", + "referencedDeclaration": 58, + "src": "7907:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 828, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8869:15:0", + "referencedDeclaration": 1281, + "src": "7907:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 830, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -11397,26 +10792,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8869:23:0", + "src": "7907:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8855:37:0", + "src": "7893:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 832, + "id": 788, "nodeType": "ExpressionStatement", - "src": "8855:37:0" + "src": "7893:37:0" }, { "expression": { "argumentTypes": null, - "id": 844, + "id": 800, "isConstant": false, "isLValue": false, "isPure": false, @@ -11427,26 +10822,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 833, + "id": 789, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8902:7:0", + "referencedDeclaration": 73, + "src": "7940:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 835, + "id": 791, "indexExpression": { "argumentTypes": null, - "id": 834, + "id": 790, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8910:3:0", + "referencedDeclaration": 772, + "src": "7948:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11457,21 +10852,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8902:12:0", + "src": "7940:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 836, + "id": 792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8902:19:0", + "referencedDeclaration": 82, + "src": "7940:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11484,12 +10879,12 @@ "arguments": [ { "argumentTypes": null, - "id": 842, + "id": 798, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8948:6:0", + "referencedDeclaration": 774, + "src": "7986:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11509,26 +10904,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 837, + "id": 793, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8924:7:0", + "referencedDeclaration": 73, + "src": "7962:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 839, + "id": 795, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 794, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8932:3:0", + "referencedDeclaration": 772, + "src": "7970:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11539,41 +10934,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8924:12:0", + "src": "7962:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 840, + "id": 796, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8924:19:0", + "referencedDeclaration": 82, + "src": "7962:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 841, + "id": 797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8924:23:0", + "referencedDeclaration": 1281, + "src": "7962:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 843, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -11581,21 +10976,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8924:31:0", + "src": "7962:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8902:53:0", + "src": "7940:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 845, + "id": 801, "nodeType": "ExpressionStatement", - "src": "8902:53:0" + "src": "7940:53:0" }, { "expression": { @@ -11603,12 +10998,12 @@ "arguments": [ { "argumentTypes": null, - "id": 847, + "id": 803, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8977:3:0", + "referencedDeclaration": 772, + "src": "8015:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11616,12 +11011,12 @@ }, { "argumentTypes": null, - "id": 848, + "id": 804, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8982:6:0", + "referencedDeclaration": 774, + "src": "8020:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11633,26 +11028,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 849, + "id": 805, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8990:7:0", + "referencedDeclaration": 73, + "src": "8028:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 851, + "id": 807, "indexExpression": { "argumentTypes": null, - "id": 850, + "id": 806, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8998:3:0", + "referencedDeclaration": 772, + "src": "8036:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11663,21 +11058,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:12:0", + "src": "8028:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 852, + "id": 808, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8990:19:0", + "referencedDeclaration": 82, + "src": "8028:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11699,18 +11094,18 @@ "typeString": "uint256" } ], - "id": 846, + "id": 802, "name": "RemoveShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 264, - "src": "8965:11:0", + "referencedDeclaration": 220, + "src": "8003:11:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 853, + "id": 809, "isConstant": false, "isLValue": false, "isPure": false, @@ -11718,90 +11113,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8965:45:0", + "src": "8003:45:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 854, + "id": 810, "nodeType": "ExpressionStatement", - "src": "8965:45:0" + "src": "8003:45:0" } ] }, "documentation": null, - "id": 856, + "id": 812, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 821, + "id": 777, "modifierName": { "argumentTypes": null, - "id": 820, + "id": 776, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8815:9:0", + "referencedDeclaration": 290, + "src": "7853:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8815:11:0" + "src": "7853:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 823, + "id": 779, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8840:3:0", + "referencedDeclaration": 772, + "src": "7878:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 824, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 822, + "id": 778, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8827:12:0", + "referencedDeclaration": 305, + "src": "7865:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8827:17:0" + "src": "7865:17:0" } ], "name": "removeShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 819, + "id": 775, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 816, + "id": 772, "name": "who", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8779:11:0", + "scope": 812, + "src": "7817:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11809,10 +11204,10 @@ "typeString": "address" }, "typeName": { - "id": 815, + "id": 771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8779:7:0", + "src": "7817:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11823,11 +11218,11 @@ }, { "constant": false, - "id": 818, + "id": 774, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8792:14:0", + "scope": 812, + "src": "7830:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11835,10 +11230,10 @@ "typeString": "uint256" }, "typeName": { - "id": 817, + "id": 773, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8792:7:0", + "src": "7830:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11848,39 +11243,39 @@ "visibility": "internal" } ], - "src": "8778:29:0" + "src": "7816:29:0" }, "payable": false, "returnParameters": { - "id": 825, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "8845:0:0" + "src": "7883:0:0" }, - "scope": 1194, - "src": "8758:259:0", + "scope": 1146, + "src": "7796:259:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 923, + "id": 879, "nodeType": "Block", - "src": "9430:392:0", + "src": "8468:392:0", "statements": [ { "assignments": [ - 866 + 822 ], "declarations": [ { "constant": false, - "id": 866, + "id": 822, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9440:16:0", + "scope": 880, + "src": "8478:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11888,10 +11283,10 @@ "typeString": "uint256" }, "typeName": { - "id": 865, + "id": 821, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9440:7:0", + "src": "8478:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11901,7 +11296,7 @@ "visibility": "internal" } ], - "id": 871, + "id": 827, "initialValue": { "argumentTypes": null, "arguments": [ @@ -11909,18 +11304,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 868, + "id": 824, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9492:3:0", + "referencedDeclaration": 1500, + "src": "8530:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 869, + "id": 825, "isConstant": false, "isLValue": false, "isPure": false, @@ -11928,7 +11323,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9492:10:0", + "src": "8530:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11942,18 +11337,18 @@ "typeString": "address" } ], - "id": 867, + "id": 823, "name": "calculateTotalWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1113, - "src": "9459:32:0", + "referencedDeclaration": 1066, + "src": "8497:32:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 870, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -11961,14 +11356,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9459:44:0", + "src": "8497:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9440:63:0" + "src": "8478:63:0" }, { "condition": { @@ -11977,19 +11372,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 881, + "id": 837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 872, + "id": 828, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9517:6:0", + "referencedDeclaration": 814, + "src": "8555:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12006,34 +11401,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 875, + "id": 831, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9539:7:0", + "referencedDeclaration": 73, + "src": "8577:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 878, + "id": 834, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 876, + "id": 832, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9547:3:0", + "referencedDeclaration": 1500, + "src": "8585:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 877, + "id": 833, "isConstant": false, "isLValue": false, "isPure": false, @@ -12041,7 +11436,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9547:10:0", + "src": "8585:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12052,21 +11447,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9539:19:0", + "src": "8577:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 879, + "id": 835, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9539:29:0", + "referencedDeclaration": 84, + "src": "8577:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12082,32 +11477,32 @@ ], "expression": { "argumentTypes": null, - "id": 873, + "id": 829, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "9526:8:0", + "referencedDeclaration": 822, + "src": "8564:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 874, + "id": 830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "9526:12:0", + "referencedDeclaration": 1281, + "src": "8564:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 880, + "id": 836, "isConstant": false, "isLValue": false, "isPure": false, @@ -12115,43 +11510,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9526:43:0", + "src": "8564:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9517:52:0", + "src": "8555:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 885, + "id": 841, "nodeType": "IfStatement", - "src": "9513:66:0", + "src": "8551:66:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 882, + "id": 838, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "9571:6:0", + "referencedDeclaration": 1505, + "src": "8609:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 883, + "id": 839, "isConstant": false, "isLValue": false, "isPure": false, @@ -12159,21 +11554,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9571:8:0", + "src": "8609:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 884, + "id": 840, "nodeType": "ExpressionStatement", - "src": "9571:8:0" + "src": "8609:8:0" } }, { "expression": { "argumentTypes": null, - "id": 899, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -12184,34 +11579,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 886, + "id": 842, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9598:7:0", + "referencedDeclaration": 73, + "src": "8636:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 889, + "id": 845, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 887, + "id": 843, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9606:3:0", + "referencedDeclaration": 1500, + "src": "8644:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 888, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -12219,7 +11614,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9606:10:0", + "src": "8644:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12230,21 +11625,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9598:19:0", + "src": "8636:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 890, + "id": 846, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9598:29:0", + "referencedDeclaration": 84, + "src": "8636:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12257,12 +11652,12 @@ "arguments": [ { "argumentTypes": null, - "id": 897, + "id": 853, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9664:6:0", + "referencedDeclaration": 814, + "src": "8702:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12282,34 +11677,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 891, + "id": 847, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9630:7:0", + "referencedDeclaration": 73, + "src": "8668:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 894, + "id": 850, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 892, + "id": 848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9638:3:0", + "referencedDeclaration": 1500, + "src": "8676:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 893, + "id": 849, "isConstant": false, "isLValue": false, "isPure": false, @@ -12317,7 +11712,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9638:10:0", + "src": "8676:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12328,41 +11723,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9630:19:0", + "src": "8668:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 895, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9630:29:0", + "referencedDeclaration": 84, + "src": "8668:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 896, + "id": 852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9630:33:0", + "referencedDeclaration": 1305, + "src": "8668:33:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 898, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, @@ -12370,38 +11765,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9630:41:0", + "src": "8668:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9598:73:0", + "src": "8636:73:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 900, + "id": 856, "nodeType": "ExpressionStatement", - "src": "9598:73:0" + "src": "8636:73:0" }, { "expression": { "argumentTypes": null, - "id": 906, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 901, + "id": 857, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9681:14:0", + "referencedDeclaration": 60, + "src": "8719:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12414,12 +11809,12 @@ "arguments": [ { "argumentTypes": null, - "id": 904, + "id": 860, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9717:6:0", + "referencedDeclaration": 814, + "src": "8755:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12435,32 +11830,32 @@ ], "expression": { "argumentTypes": null, - "id": 902, + "id": 858, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9698:14:0", + "referencedDeclaration": 60, + "src": "8736:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 903, + "id": 859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9698:18:0", + "referencedDeclaration": 1305, + "src": "8736:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 905, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -12468,21 +11863,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9698:26:0", + "src": "8736:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:43:0", + "src": "8719:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 907, + "id": 863, "nodeType": "ExpressionStatement", - "src": "9681:43:0" + "src": "8719:43:0" }, { "expression": { @@ -12490,12 +11885,12 @@ "arguments": [ { "argumentTypes": null, - "id": 913, + "id": 869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9754:6:0", + "referencedDeclaration": 814, + "src": "8792:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12513,18 +11908,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 908, + "id": 864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9734:3:0", + "referencedDeclaration": 1500, + "src": "8772:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 911, + "id": 867, "isConstant": false, "isLValue": false, "isPure": false, @@ -12532,13 +11927,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:10:0", + "src": "8772:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 912, + "id": 868, "isConstant": false, "isLValue": false, "isPure": false, @@ -12546,13 +11941,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:19:0", + "src": "8772:19:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 914, + "id": 870, "isConstant": false, "isLValue": false, "isPure": false, @@ -12560,15 +11955,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9734:27:0", + "src": "8772:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 915, + "id": 871, "nodeType": "ExpressionStatement", - "src": "9734:27:0" + "src": "8772:27:0" }, { "expression": { @@ -12578,18 +11973,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 873, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9780:3:0", + "referencedDeclaration": 1500, + "src": "8818:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 918, + "id": 874, "isConstant": false, "isLValue": false, "isPure": false, @@ -12597,7 +11992,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9780:10:0", + "src": "8818:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12605,12 +12000,12 @@ }, { "argumentTypes": null, - "id": 919, + "id": 875, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9792:6:0", + "referencedDeclaration": 814, + "src": "8830:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12618,12 +12013,12 @@ }, { "argumentTypes": null, - "id": 920, + "id": 876, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9800:14:0", + "referencedDeclaration": 60, + "src": "8838:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12645,18 +12040,18 @@ "typeString": "uint256" } ], - "id": 916, + "id": 872, "name": "Withdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "9771:8:0", + "referencedDeclaration": 194, + "src": "8809:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 921, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -12664,20 +12059,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9771:44:0", + "src": "8809:44:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 922, + "id": 878, "nodeType": "ExpressionStatement", - "src": "9771:44:0" + "src": "8809:44:0" } ] }, "documentation": null, - "id": 924, + "id": 880, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -12688,18 +12083,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 861, + "id": 817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9418:3:0", + "referencedDeclaration": 1500, + "src": "8456:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 862, + "id": 818, "isConstant": false, "isLValue": false, "isPure": false, @@ -12707,44 +12102,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9418:10:0", + "src": "8456:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 863, + "id": 819, "modifierName": { "argumentTypes": null, - "id": 860, + "id": 816, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9405:12:0", + "referencedDeclaration": 305, + "src": "8443:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9405:24:0" + "src": "8443:24:0" } ], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 859, + "id": 815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 858, + "id": 814, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9382:14:0", + "scope": 880, + "src": "8420:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12752,10 +12147,10 @@ "typeString": "uint256" }, "typeName": { - "id": 857, + "id": 813, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9382:7:0", + "src": "8420:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12765,39 +12160,39 @@ "visibility": "internal" } ], - "src": "9381:16:0" + "src": "8419:16:0" }, "payable": false, "returnParameters": { - "id": 864, + "id": 820, "nodeType": "ParameterList", "parameters": [], - "src": "9430:0:0" + "src": "8468:0:0" }, - "scope": 1194, - "src": "9364:458:0", + "scope": 1146, + "src": "8402:458:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1011, + "id": 964, "nodeType": "Block", - "src": "9958:503:0", + "src": "8997:458:0", "statements": [ { "assignments": [ - 936 + 892 ], "declarations": [ { "constant": false, - "id": 936, + "id": 892, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9968:16:0", + "scope": 965, + "src": "9007:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12805,10 +12200,10 @@ "typeString": "uint256" }, "typeName": { - "id": 935, + "id": 891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9968:7:0", + "src": "9007:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12818,7 +12213,7 @@ "visibility": "internal" } ], - "id": 942, + "id": 898, "initialValue": { "argumentTypes": null, "arguments": [ @@ -12826,18 +12221,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 938, + "id": 894, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10025:3:0", + "referencedDeclaration": 1500, + "src": "9064:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 939, + "id": 895, "isConstant": false, "isLValue": false, "isPure": false, @@ -12845,7 +12240,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10025:10:0", + "src": "9064:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12853,12 +12248,12 @@ }, { "argumentTypes": null, - "id": 940, + "id": 896, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10037:5:0", + "referencedDeclaration": 884, + "src": "9076:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12876,18 +12271,18 @@ "typeString": "address" } ], - "id": 937, + "id": 893, "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "9987:37:0", + "referencedDeclaration": 1116, + "src": "9026:37:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 941, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -12895,14 +12290,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9987:56:0", + "src": "9026:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9968:75:0" + "src": "9007:75:0" }, { "condition": { @@ -12911,19 +12306,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 954, + "id": 910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 943, + "id": 899, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10057:6:0", + "referencedDeclaration": 882, + "src": "9096:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12942,34 +12337,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 946, + "id": 902, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10079:7:0", + "referencedDeclaration": 73, + "src": "9118:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 949, + "id": 905, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 903, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10087:3:0", + "referencedDeclaration": 1500, + "src": "9126:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 948, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, @@ -12977,7 +12372,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10087:10:0", + "src": "9126:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12988,35 +12383,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:19:0", + "src": "9118:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 950, + "id": 906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10079:35:0", + "referencedDeclaration": 90, + "src": "9118:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 952, + "id": 908, "indexExpression": { "argumentTypes": null, - "id": 951, + "id": 907, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10115:5:0", + "referencedDeclaration": 884, + "src": "9154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13027,7 +12422,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:42:0", + "src": "9118:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13043,32 +12438,32 @@ ], "expression": { "argumentTypes": null, - "id": 944, + "id": 900, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "10066:8:0", + "referencedDeclaration": 892, + "src": "9105:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 945, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "10066:12:0", + "referencedDeclaration": 1281, + "src": "9105:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 953, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -13076,43 +12471,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10066:56:0", + "src": "9105:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10057:65:0", + "src": "9096:65:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 958, + "id": 914, "nodeType": "IfStatement", - "src": "10053:79:0", + "src": "9092:79:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 955, + "id": 911, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10124:6:0", + "referencedDeclaration": 1505, + "src": "9163:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 956, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -13120,21 +12515,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10124:8:0", + "src": "9163:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 957, + "id": 913, "nodeType": "ExpressionStatement", - "src": "10124:8:0" + "src": "9163:8:0" } }, { "expression": { "argumentTypes": null, - "id": 976, + "id": 932, "isConstant": false, "isLValue": false, "isPure": false, @@ -13147,34 +12542,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 959, + "id": 915, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10143:7:0", + "referencedDeclaration": 73, + "src": "9182:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 962, + "id": 918, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 960, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10151:3:0", + "referencedDeclaration": 1500, + "src": "9190:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 961, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -13182,7 +12577,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10151:10:0", + "src": "9190:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13193,35 +12588,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10143:19:0", + "src": "9182:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 963, + "id": 919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10143:35:0", + "referencedDeclaration": 90, + "src": "9182:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 965, + "id": 921, "indexExpression": { "argumentTypes": null, - "id": 964, + "id": 920, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10179:5:0", + "referencedDeclaration": 884, + "src": "9218:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13232,7 +12627,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10143:42:0", + "src": "9182:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13245,12 +12640,12 @@ "arguments": [ { "argumentTypes": null, - "id": 974, + "id": 930, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10235:6:0", + "referencedDeclaration": 882, + "src": "9274:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13272,34 +12667,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 966, + "id": 922, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10188:7:0", + "referencedDeclaration": 73, + "src": "9227:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 969, + "id": 925, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 923, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10196:3:0", + "referencedDeclaration": 1500, + "src": "9235:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 968, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -13307,7 +12702,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10196:10:0", + "src": "9235:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13318,35 +12713,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:19:0", + "src": "9227:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 970, + "id": 926, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10188:35:0", + "referencedDeclaration": 90, + "src": "9227:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 972, + "id": 928, "indexExpression": { "argumentTypes": null, - "id": 971, + "id": 927, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10224:5:0", + "referencedDeclaration": 884, + "src": "9263:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13357,27 +12752,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:42:0", + "src": "9227:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 973, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10188:46:0", + "referencedDeclaration": 1305, + "src": "9227:46:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 975, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -13385,81 +12780,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10188:54:0", + "src": "9227:54:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10143:99:0", + "src": "9182:99:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 977, + "id": 933, "nodeType": "ExpressionStatement", - "src": "10143:99:0" + "src": "9182:99:0" }, { "expression": { "argumentTypes": null, - "id": 989, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10252:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "id": 979, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10259:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10252:13:0", + "id": 934, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9291:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 936, + "indexExpression": { + "argumentTypes": null, + "id": 935, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9298:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 981, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10252:28:0", + "nodeType": "IndexAccess", + "src": "9291:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13472,12 +12851,12 @@ "arguments": [ { "argumentTypes": null, - "id": 987, + "id": 941, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10316:6:0", + "referencedDeclaration": 882, + "src": "9325:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13493,75 +12872,59 @@ ], "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 982, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10283:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 984, - "indexExpression": { - "argumentTypes": null, - "id": 983, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10283:13:0", + "id": 937, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9307:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 939, + "indexExpression": { + "argumentTypes": null, + "id": 938, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9314:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 985, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10283:28:0", + "nodeType": "IndexAccess", + "src": "9307:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 986, + "id": 940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10283:32:0", + "referencedDeclaration": 1305, + "src": "9307:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 988, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -13569,21 +12932,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10283:40:0", + "src": "9307:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10252:71:0", + "src": "9291:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 990, + "id": 944, "nodeType": "ExpressionStatement", - "src": "10252:71:0" + "src": "9291:41:0" }, { "expression": { @@ -13593,18 +12956,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 995, + "id": 949, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10355:3:0", + "referencedDeclaration": 1500, + "src": "9364:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 996, + "id": 950, "isConstant": false, "isLValue": false, "isPure": false, @@ -13612,7 +12975,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10355:10:0", + "src": "9364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13620,12 +12983,12 @@ }, { "argumentTypes": null, - "id": 997, + "id": 951, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10367:6:0", + "referencedDeclaration": 882, + "src": "9376:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13648,12 +13011,12 @@ "arguments": [ { "argumentTypes": null, - "id": 992, + "id": 946, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10339:5:0", + "referencedDeclaration": 884, + "src": "9348:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13667,18 +13030,18 @@ "typeString": "address" } ], - "id": 991, + "id": 945, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "10333:5:0", + "referencedDeclaration": 1213, + "src": "9342:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 993, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, @@ -13686,27 +13049,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:12:0", + "src": "9342:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 994, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 1212, - "src": "10333:21:0", + "referencedDeclaration": 1164, + "src": "9342:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 998, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -13714,15 +13077,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:41:0", + "src": "9342:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 999, + "id": 953, "nodeType": "ExpressionStatement", - "src": "10333:41:0" + "src": "9342:41:0" }, { "expression": { @@ -13732,18 +13095,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1001, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10398:3:0", + "referencedDeclaration": 1500, + "src": "9407:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1002, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -13751,7 +13114,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10398:10:0", + "src": "9407:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13759,12 +13122,12 @@ }, { "argumentTypes": null, - "id": 1003, + "id": 957, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10410:6:0", + "referencedDeclaration": 882, + "src": "9419:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13772,12 +13135,12 @@ }, { "argumentTypes": null, - "id": 1004, + "id": 958, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10418:5:0", + "referencedDeclaration": 884, + "src": "9427:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13785,55 +13148,39 @@ }, { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1005, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10425:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1007, - "indexExpression": { - "argumentTypes": null, - "id": 1006, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10425:13:0", + "id": 959, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9434:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "id": 960, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9441:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1008, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10425:28:0", + "nodeType": "IndexAccess", + "src": "9434:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13859,18 +13206,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 954, "name": "TokenWithdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "10384:13:0", + "referencedDeclaration": 204, + "src": "9393:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,address,uint256)" } }, - "id": 1009, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -13878,20 +13225,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10384:70:0", + "src": "9393:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1010, + "id": 963, "nodeType": "ExpressionStatement", - "src": "10384:70:0" + "src": "9393:55:0" } ] }, "documentation": null, - "id": 1012, + "id": 965, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -13902,18 +13249,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 931, + "id": 887, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9946:3:0", + "referencedDeclaration": 1500, + "src": "8985:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 932, + "id": 888, "isConstant": false, "isLValue": false, "isPure": false, @@ -13921,44 +13268,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9946:10:0", + "src": "8985:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 933, + "id": 889, "modifierName": { "argumentTypes": null, - "id": 930, + "id": 886, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9933:12:0", + "referencedDeclaration": 305, + "src": "8972:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9933:24:0" + "src": "8972:24:0" } ], "name": "withdrawToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 929, + "id": 885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 926, + "id": 882, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9895:14:0", + "scope": 965, + "src": "8934:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13966,10 +13313,10 @@ "typeString": "uint256" }, "typeName": { - "id": 925, + "id": 881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9895:7:0", + "src": "8934:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13980,11 +13327,11 @@ }, { "constant": false, - "id": 928, + "id": 884, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9911:13:0", + "scope": 965, + "src": "8950:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13992,10 +13339,10 @@ "typeString": "address" }, "typeName": { - "id": 927, + "id": 883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9911:7:0", + "src": "8950:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14005,26 +13352,26 @@ "visibility": "internal" } ], - "src": "9894:31:0" + "src": "8933:31:0" }, "payable": false, "returnParameters": { - "id": 934, + "id": 890, "nodeType": "ParameterList", "parameters": [], - "src": "9958:0:0" + "src": "8997:0:0" }, - "scope": 1194, - "src": "9872:589:0", + "scope": 1146, + "src": "8911:544:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1050, + "id": 1003, "nodeType": "Block", - "src": "10726:267:0", + "src": "9720:267:0", "statements": [ { "condition": { @@ -14033,19 +13380,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1024, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1021, + "id": 974, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10740:6:0", + "referencedDeclaration": 967, + "src": "9734:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14058,18 +13405,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1022, + "id": 975, "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "10749:39:0", + "referencedDeclaration": 1127, + "src": "9743:39:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1023, + "id": 976, "isConstant": false, "isLValue": false, "isPure": false, @@ -14077,43 +13424,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10749:41:0", + "src": "9743:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10740:50:0", + "src": "9734:50:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1028, + "id": 981, "nodeType": "IfStatement", - "src": "10736:64:0", + "src": "9730:64:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 1025, + "id": 978, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10792:6:0", + "referencedDeclaration": 1505, + "src": "9786:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1026, + "id": 979, "isConstant": false, "isLValue": false, "isPure": false, @@ -14121,33 +13468,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10792:8:0", + "src": "9786:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1027, + "id": 980, "nodeType": "ExpressionStatement", - "src": "10792:8:0" + "src": "9786:8:0" } }, { "expression": { "argumentTypes": null, - "id": 1034, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1029, + "id": 982, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10819:22:0", + "referencedDeclaration": 69, + "src": "9813:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14160,12 +13507,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1032, + "id": 985, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10871:6:0", + "referencedDeclaration": 967, + "src": "9865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14181,32 +13528,32 @@ ], "expression": { "argumentTypes": null, - "id": 1030, + "id": 983, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10844:22:0", + "referencedDeclaration": 69, + "src": "9838:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1031, + "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10844:26:0", + "referencedDeclaration": 1305, + "src": "9838:26:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1033, + "id": 986, "isConstant": false, "isLValue": false, "isPure": false, @@ -14214,21 +13561,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10844:34:0", + "src": "9838:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10819:59:0", + "src": "9813:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1035, + "id": 988, "nodeType": "ExpressionStatement", - "src": "10819:59:0" + "src": "9813:59:0" }, { "expression": { @@ -14236,12 +13583,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1039, + "id": 992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10900:6:0", + "referencedDeclaration": 967, + "src": "9894:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14257,18 +13604,18 @@ ], "expression": { "argumentTypes": null, - "id": 1036, + "id": 989, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10888:2:0", + "referencedDeclaration": 969, + "src": "9882:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1038, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -14276,13 +13623,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10888:11:0", + "src": "9882:11:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1040, + "id": 993, "isConstant": false, "isLValue": false, "isPure": false, @@ -14290,15 +13637,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10888:19:0", + "src": "9882:19:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 994, "nodeType": "ExpressionStatement", - "src": "10888:19:0" + "src": "9882:19:0" }, { "expression": { @@ -14308,18 +13655,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1043, + "id": 996, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10939:3:0", + "referencedDeclaration": 1500, + "src": "9933:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1044, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, @@ -14327,7 +13674,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10939:10:0", + "src": "9933:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14335,12 +13682,12 @@ }, { "argumentTypes": null, - "id": 1045, + "id": 998, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10951:2:0", + "referencedDeclaration": 969, + "src": "9945:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14348,12 +13695,12 @@ }, { "argumentTypes": null, - "id": 1046, + "id": 999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10955:6:0", + "referencedDeclaration": 967, + "src": "9949:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14361,12 +13708,12 @@ }, { "argumentTypes": null, - "id": 1047, + "id": 1000, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10963:22:0", + "referencedDeclaration": 69, + "src": "9957:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14392,18 +13739,18 @@ "typeString": "uint256" } ], - "id": 1042, + "id": 995, "name": "WithdrawSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 304, - "src": "10917:21:0", + "referencedDeclaration": 260, + "src": "9911:21:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 1048, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -14411,57 +13758,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10917:69:0", + "src": "9911:69:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "10917:69:0" + "src": "9911:69:0" } ] }, "documentation": null, - "id": 1051, + "id": 1004, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 1019, + "id": 972, "modifierName": { "argumentTypes": null, - "id": 1018, + "id": 971, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "10714:9:0", + "referencedDeclaration": 290, + "src": "9708:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "10714:11:0" + "src": "9708:11:0" } ], "name": "withdrawSharedExpense", "nodeType": "FunctionDefinition", "parameters": { - "id": 1017, + "id": 970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1014, + "id": 967, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10679:14:0", + "scope": 1004, + "src": "9673:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14469,10 +13816,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1013, + "id": 966, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10679:7:0", + "src": "9673:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14483,11 +13830,11 @@ }, { "constant": false, - "id": 1016, + "id": 969, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10695:10:0", + "scope": 1004, + "src": "9689:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14495,10 +13842,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10695:7:0", + "src": "9689:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14508,39 +13855,39 @@ "visibility": "internal" } ], - "src": "10678:28:0" + "src": "9672:28:0" }, "payable": false, "returnParameters": { - "id": 1020, + "id": 973, "nodeType": "ParameterList", "parameters": [], - "src": "10726:0:0" + "src": "9720:0:0" }, - "scope": 1194, - "src": "10648:345:0", + "scope": 1146, + "src": "9642:345:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1112, + "id": 1065, "nodeType": "Block", - "src": "11276:651:0", + "src": "10270:651:0", "statements": [ { "assignments": [ - 1062 + 1015 ], "declarations": [ { "constant": false, - "id": 1062, + "id": 1015, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11424:18:0", + "scope": 1066, + "src": "10418:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14548,10 +13895,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1061, + "id": 1014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11424:7:0", + "src": "10418:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14561,18 +13908,18 @@ "visibility": "internal" } ], - "id": 1068, + "id": 1021, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1066, + "id": 1019, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "11462:14:0", + "referencedDeclaration": 60, + "src": "10456:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14590,18 +13937,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1063, + "id": 1016, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "11445:4:0", + "referencedDeclaration": 1513, + "src": "10439:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 1064, + "id": 1017, "isConstant": false, "isLValue": false, "isPure": false, @@ -14609,27 +13956,27 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "11445:12:0", + "src": "10439:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1065, + "id": 1018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11445:16:0", + "referencedDeclaration": 1305, + "src": "10439:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1067, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": false, @@ -14637,31 +13984,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11445:32:0", + "src": "10439:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11424:53:0" + "src": "10418:53:0" }, { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1069, + "id": 1022, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11487:10:0", + "referencedDeclaration": 1015, + "src": "10481:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14674,12 +14021,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1072, + "id": 1025, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "11515:13:0", + "referencedDeclaration": 67, + "src": "10509:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14695,32 +14042,32 @@ ], "expression": { "argumentTypes": null, - "id": 1070, + "id": 1023, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11500:10:0", + "referencedDeclaration": 1015, + "src": "10494:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1071, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "11500:14:0", + "referencedDeclaration": 1281, + "src": "10494:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1073, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -14728,38 +14075,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11500:29:0", + "src": "10494:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11487:42:0", + "src": "10481:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1075, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "11487:42:0" + "src": "10481:42:0" }, { "expression": { "argumentTypes": null, - "id": 1081, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1076, + "id": 1029, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11539:10:0", + "referencedDeclaration": 1015, + "src": "10533:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14772,12 +14119,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1079, + "id": 1032, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "11567:22:0", + "referencedDeclaration": 69, + "src": "10561:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14793,32 +14140,32 @@ ], "expression": { "argumentTypes": null, - "id": 1077, + "id": 1030, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11552:10:0", + "referencedDeclaration": 1015, + "src": "10546:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11552:14:0", + "referencedDeclaration": 1305, + "src": "10546:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1080, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, @@ -14826,34 +14173,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11552:38:0", + "src": "10546:38:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11539:51:0", + "src": "10533:51:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1082, + "id": 1035, "nodeType": "ExpressionStatement", - "src": "11539:51:0" + "src": "10533:51:0" }, { "assignments": [ - 1084 + 1037 ], "declarations": [ { "constant": false, - "id": 1084, + "id": 1037, "name": "ethPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11710:22:0", + "scope": 1066, + "src": "10704:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14861,10 +14208,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1083, + "id": 1036, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11710:7:0", + "src": "10704:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14874,18 +14221,18 @@ "visibility": "internal" } ], - "id": 1090, + "id": 1043, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1087, + "id": 1040, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "11754:11:0", + "referencedDeclaration": 58, + "src": "10748:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14893,12 +14240,12 @@ }, { "argumentTypes": null, - "id": 1088, + "id": 1041, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11767:9:0", + "referencedDeclaration": 65, + "src": "10761:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14918,32 +14265,32 @@ ], "expression": { "argumentTypes": null, - "id": 1085, + "id": 1038, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11735:10:0", + "referencedDeclaration": 1015, + "src": "10729:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1086, + "id": 1039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "11735:18:0", + "referencedDeclaration": 1344, + "src": "10729:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1089, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -14951,27 +14298,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11735:42:0", + "src": "10729:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11710:67:0" + "src": "10704:67:0" }, { "assignments": [ - 1092 + 1045 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1045, "name": "ethPPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11788:14:0", + "scope": 1066, + "src": "10782:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14979,10 +14326,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1091, + "id": 1044, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11788:7:0", + "src": "10782:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14992,7 +14339,7 @@ "visibility": "internal" } ], - "id": 1100, + "id": 1053, "initialValue": { "argumentTypes": null, "arguments": [ @@ -15002,26 +14349,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1095, + "id": 1048, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "11824:7:0", + "referencedDeclaration": 73, + "src": "10818:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1097, + "id": 1050, "indexExpression": { "argumentTypes": null, - "id": 1096, + "id": 1049, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11832:3:0", + "referencedDeclaration": 1006, + "src": "10826:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15032,21 +14379,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11824:12:0", + "src": "10818:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1098, + "id": 1051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11824:19:0", + "referencedDeclaration": 82, + "src": "10818:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15062,32 +14409,32 @@ ], "expression": { "argumentTypes": null, - "id": 1093, + "id": 1046, "name": "ethPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "11805:14:0", + "referencedDeclaration": 1037, + "src": "10799:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1094, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "11805:18:0", + "referencedDeclaration": 1243, + "src": "10799:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1099, + "id": 1052, "isConstant": false, "isLValue": false, "isPure": false, @@ -15095,27 +14442,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11805:39:0", + "src": "10799:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11788:56:0" + "src": "10782:56:0" }, { "assignments": [ - 1102 + 1055 ], "declarations": [ { "constant": false, - "id": 1102, + "id": 1055, "name": "ethVal", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11854:14:0", + "scope": 1066, + "src": "10848:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15123,10 +14470,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1101, + "id": 1054, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11854:7:0", + "src": "10848:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15136,7 +14483,7 @@ "visibility": "internal" } ], - "id": 1109, + "id": 1062, "initialValue": { "argumentTypes": null, "arguments": [ @@ -15146,7 +14493,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1107, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": true, @@ -15154,14 +14501,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1105, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11882:2:0", + "src": "10876:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -15173,18 +14520,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1106, + "id": 1059, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11886:9:0", + "referencedDeclaration": 65, + "src": "10880:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11882:13:0", + "src": "10876:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15200,32 +14547,32 @@ ], "expression": { "argumentTypes": null, - "id": 1103, + "id": 1056, "name": "ethPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "11871:6:0", + "referencedDeclaration": 1045, + "src": "10865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1104, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "11871:10:0", + "referencedDeclaration": 1261, + "src": "10865:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1108, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -15233,38 +14580,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11871:25:0", + "src": "10865:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11854:42:0" + "src": "10848:42:0" }, { "expression": { "argumentTypes": null, - "id": 1110, + "id": 1063, "name": "ethVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "11914:6:0", + "referencedDeclaration": 1055, + "src": "10908:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1060, - "id": 1111, + "functionReturnParameters": 1013, + "id": 1064, "nodeType": "Return", - "src": "11907:13:0" + "src": "10901:13:0" } ] }, "documentation": null, - "id": 1113, + "id": 1066, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15273,49 +14620,49 @@ "arguments": [ { "argumentTypes": null, - "id": 1056, + "id": 1009, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11253:3:0", + "referencedDeclaration": 1006, + "src": "10247:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 1057, + "id": 1010, "modifierName": { "argumentTypes": null, - "id": 1055, + "id": 1008, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "11240:12:0", + "referencedDeclaration": 305, + "src": "10234:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "11240:17:0" + "src": "10234:17:0" } ], "name": "calculateTotalWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1054, + "id": 1007, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1053, + "id": 1006, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11211:11:0", + "scope": 1066, + "src": "10205:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15323,10 +14670,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 1005, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11211:7:0", + "src": "10205:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15336,20 +14683,20 @@ "visibility": "internal" } ], - "src": "11210:13:0" + "src": "10204:13:0" }, "payable": false, "returnParameters": { - "id": 1060, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1059, + "id": 1012, "name": "", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11267:7:0", + "scope": 1066, + "src": "10261:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15357,10 +14704,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1058, + "id": 1011, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11267:7:0", + "src": "10261:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15370,32 +14717,32 @@ "visibility": "internal" } ], - "src": "11266:9:0" + "src": "10260:9:0" }, - "scope": 1194, - "src": "11169:758:0", + "scope": 1146, + "src": "10163:758:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1163, + "id": 1115, "nodeType": "Block", - "src": "12042:418:0", + "src": "11036:403:0", "statements": [ { "assignments": [ - 1123 + 1076 ], "declarations": [ { "constant": false, - "id": 1123, + "id": 1076, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12052:18:0", + "scope": 1116, + "src": "11046:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15403,10 +14750,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1122, + "id": 1075, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12052:7:0", + "src": "11046:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15416,61 +14763,45 @@ "visibility": "internal" } ], - "id": 1133, + "id": 1085, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1128, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "12102:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1130, - "indexExpression": { - "argumentTypes": null, - "id": 1129, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12109:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12102:13:0", + "id": 1081, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "11096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 1083, + "indexExpression": { + "argumentTypes": null, + "id": 1082, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1070, + "src": "11103:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1131, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "12102:28:0", + "nodeType": "IndexAccess", + "src": "11096:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15489,12 +14820,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1125, + "id": 1078, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12091:5:0", + "referencedDeclaration": 1070, + "src": "11085:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15508,18 +14839,18 @@ "typeString": "address" } ], - "id": 1124, + "id": 1077, "name": "checkERC20Balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 452, - "src": "12073:17:0", + "referencedDeclaration": 408, + "src": "11067:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1126, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -15527,27 +14858,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:24:0", + "src": "11067:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1127, + "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "12073:28:0", + "referencedDeclaration": 1305, + "src": "11067:28:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1132, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, @@ -15555,27 +14886,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:58:0", + "src": "11067:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12052:79:0" + "src": "11046:64:0" }, { "assignments": [ - 1135 + 1087 ], "declarations": [ { "constant": false, - "id": 1135, + "id": 1087, "name": "tokPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12243:22:0", + "scope": 1116, + "src": "11222:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15583,10 +14914,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1134, + "id": 1086, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12243:7:0", + "src": "11222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15596,18 +14927,18 @@ "visibility": "internal" } ], - "id": 1141, + "id": 1093, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1138, + "id": 1090, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "12287:11:0", + "referencedDeclaration": 58, + "src": "11266:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15615,12 +14946,12 @@ }, { "argumentTypes": null, - "id": 1139, + "id": 1091, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12300:9:0", + "referencedDeclaration": 65, + "src": "11279:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15640,32 +14971,32 @@ ], "expression": { "argumentTypes": null, - "id": 1136, + "id": 1088, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1123, - "src": "12268:10:0", + "referencedDeclaration": 1076, + "src": "11247:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1137, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12268:18:0", + "referencedDeclaration": 1344, + "src": "11247:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1140, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": false, @@ -15673,27 +15004,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12268:42:0", + "src": "11247:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12243:67:0" + "src": "11222:67:0" }, { "assignments": [ - 1143 + 1095 ], "declarations": [ { "constant": false, - "id": 1143, + "id": 1095, "name": "tokPPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12321:14:0", + "scope": 1116, + "src": "11300:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15701,10 +15032,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1142, + "id": 1094, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12321:7:0", + "src": "11300:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15714,7 +15045,7 @@ "visibility": "internal" } ], - "id": 1151, + "id": 1103, "initialValue": { "argumentTypes": null, "arguments": [ @@ -15724,26 +15055,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1146, + "id": 1098, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "12357:7:0", + "referencedDeclaration": 73, + "src": "11336:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1148, + "id": 1100, "indexExpression": { "argumentTypes": null, - "id": 1147, + "id": 1099, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1115, - "src": "12365:3:0", + "referencedDeclaration": 1068, + "src": "11344:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15754,21 +15085,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12357:12:0", + "src": "11336:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1149, + "id": 1101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "12357:19:0", + "referencedDeclaration": 82, + "src": "11336:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15784,32 +15115,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1096, "name": "tokPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1135, - "src": "12338:14:0", + "referencedDeclaration": 1087, + "src": "11317:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1145, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "12338:18:0", + "referencedDeclaration": 1243, + "src": "11317:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1150, + "id": 1102, "isConstant": false, "isLValue": false, "isPure": false, @@ -15817,27 +15148,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12338:39:0", + "src": "11317:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12321:56:0" + "src": "11300:56:0" }, { "assignments": [ - 1153 + 1105 ], "declarations": [ { "constant": false, - "id": 1153, + "id": 1105, "name": "tokVal", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12387:14:0", + "scope": 1116, + "src": "11366:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15845,10 +15176,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1152, + "id": 1104, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12387:7:0", + "src": "11366:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15858,7 +15189,7 @@ "visibility": "internal" } ], - "id": 1160, + "id": 1112, "initialValue": { "argumentTypes": null, "arguments": [ @@ -15868,7 +15199,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1158, + "id": 1110, "isConstant": false, "isLValue": false, "isPure": true, @@ -15876,14 +15207,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1156, + "id": 1108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12415:2:0", + "src": "11394:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -15895,18 +15226,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1157, + "id": 1109, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12419:9:0", + "referencedDeclaration": 65, + "src": "11398:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12415:13:0", + "src": "11394:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15922,32 +15253,32 @@ ], "expression": { "argumentTypes": null, - "id": 1154, + "id": 1106, "name": "tokPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "12404:6:0", + "referencedDeclaration": 1095, + "src": "11383:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1155, + "id": 1107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "12404:10:0", + "referencedDeclaration": 1261, + "src": "11383:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1159, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -15955,38 +15286,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12404:25:0", + "src": "11383:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12387:42:0" + "src": "11366:42:0" }, { "expression": { "argumentTypes": null, - "id": 1161, + "id": 1113, "name": "tokVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1153, - "src": "12447:6:0", + "referencedDeclaration": 1105, + "src": "11426:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1121, - "id": 1162, + "functionReturnParameters": 1074, + "id": 1114, "nodeType": "Return", - "src": "12440:13:0" + "src": "11419:13:0" } ] }, "documentation": null, - "id": 1164, + "id": 1116, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15994,16 +15325,16 @@ "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1118, + "id": 1071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1115, + "id": 1068, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11981:11:0", + "scope": 1116, + "src": "10975:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16011,10 +15342,10 @@ "typeString": "address" }, "typeName": { - "id": 1114, + "id": 1067, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11981:7:0", + "src": "10975:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16025,11 +15356,11 @@ }, { "constant": false, - "id": 1117, + "id": 1070, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11994:13:0", + "scope": 1116, + "src": "10988:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16037,10 +15368,10 @@ "typeString": "address" }, "typeName": { - "id": 1116, + "id": 1069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11994:7:0", + "src": "10988:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16050,20 +15381,20 @@ "visibility": "internal" } ], - "src": "11980:28:0" + "src": "10974:28:0" }, "payable": false, "returnParameters": { - "id": 1121, + "id": 1074, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1073, "name": "", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12033:7:0", + "scope": 1116, + "src": "11027:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16071,10 +15402,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1119, + "id": 1072, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12033:7:0", + "src": "11027:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16084,19 +15415,19 @@ "visibility": "internal" } ], - "src": "12032:9:0" + "src": "11026:9:0" }, - "scope": 1194, - "src": "11934:526:0", + "scope": 1146, + "src": "10928:511:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1174, + "id": 1126, "nodeType": "Block", - "src": "12550:65:0", + "src": "11529:65:0", "statements": [ { "expression": { @@ -16104,12 +15435,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1171, + "id": 1123, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "12585:22:0", + "referencedDeclaration": 69, + "src": "11564:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16125,32 +15456,32 @@ ], "expression": { "argumentTypes": null, - "id": 1169, + "id": 1121, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "12567:13:0", + "referencedDeclaration": 67, + "src": "11546:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1170, + "id": 1122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "12567:17:0", + "referencedDeclaration": 1281, + "src": "11546:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1172, + "id": 1124, "isConstant": false, "isLValue": false, "isPure": false, @@ -16158,21 +15489,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12567:41:0", + "src": "11546:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1168, - "id": 1173, + "functionReturnParameters": 1120, + "id": 1125, "nodeType": "Return", - "src": "12560:48:0" + "src": "11539:48:0" } ] }, "documentation": null, - "id": 1175, + "id": 1127, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -16180,23 +15511,23 @@ "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1165, + "id": 1117, "nodeType": "ParameterList", "parameters": [], - "src": "12514:2:0" + "src": "11493:2:0" }, "payable": false, "returnParameters": { - "id": 1168, + "id": 1120, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1167, + "id": 1119, "name": "", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "12541:7:0", + "scope": 1127, + "src": "11520:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16204,10 +15535,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1166, + "id": 1118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12541:7:0", + "src": "11520:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16217,19 +15548,19 @@ "visibility": "internal" } ], - "src": "12540:9:0" + "src": "11519:9:0" }, - "scope": 1194, - "src": "12466:149:0", + "scope": 1146, + "src": "11445:149:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1192, + "id": 1144, "nodeType": "Block", - "src": "12737:39:0", + "src": "11716:39:0", "statements": [ { "expression": { @@ -16237,12 +15568,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1179, - "src": "12764:1:0", + "referencedDeclaration": 1131, + "src": "11743:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16250,12 +15581,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1141, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1181, - "src": "12767:1:0", + "referencedDeclaration": 1133, + "src": "11746:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16275,32 +15606,32 @@ ], "expression": { "argumentTypes": null, - "id": 1186, + "id": 1138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "12754:1:0", + "referencedDeclaration": 1129, + "src": "11733:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1187, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12754:9:0", + "referencedDeclaration": 1344, + "src": "11733:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1190, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -16308,21 +15639,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12754:15:0", + "src": "11733:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1185, - "id": 1191, + "functionReturnParameters": 1137, + "id": 1143, "nodeType": "Return", - "src": "12747:22:0" + "src": "11726:22:0" } ] }, "documentation": null, - "id": 1193, + "id": 1145, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -16330,16 +15661,16 @@ "name": "delegatePercent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1182, + "id": 1134, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1177, + "id": 1129, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12670:9:0", + "scope": 1145, + "src": "11649:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16347,10 +15678,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1176, + "id": 1128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12670:7:0", + "src": "11649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16361,11 +15692,11 @@ }, { "constant": false, - "id": 1179, + "id": 1131, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12681:9:0", + "scope": 1145, + "src": "11660:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16373,10 +15704,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1178, + "id": 1130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12681:7:0", + "src": "11660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16387,11 +15718,11 @@ }, { "constant": false, - "id": 1181, + "id": 1133, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12692:9:0", + "scope": 1145, + "src": "11671:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16399,10 +15730,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1180, + "id": 1132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12692:7:0", + "src": "11671:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16412,20 +15743,20 @@ "visibility": "internal" } ], - "src": "12669:33:0" + "src": "11648:33:0" }, "payable": false, "returnParameters": { - "id": 1185, + "id": 1137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 1136, "name": "", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12728:7:0", + "scope": 1145, + "src": "11707:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16433,10 +15764,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1183, + "id": 1135, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12728:7:0", + "src": "11707:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16446,17 +15777,17 @@ "visibility": "internal" } ], - "src": "12727:9:0" + "src": "11706:9:0" }, - "scope": 1194, - "src": "12645:131:0", + "scope": 1146, + "src": "11624:131:0", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1394, - "src": "989:11789:0" + "scope": 1346, + "src": "444:11313:0" }, { "baseContracts": [], @@ -16464,20 +15795,20 @@ "contractKind": "contract", "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", "fullyImplemented": false, - "id": 1221, + "id": 1173, "linearizedBaseContracts": [ - 1221 + 1173 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1196, + "id": 1148, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 1221, - "src": "12932:26:0", + "scope": 1173, + "src": "11911:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -16485,10 +15816,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1195, + "id": 1147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12932:7:0", + "src": "11911:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16500,7 +15831,7 @@ { "body": null, "documentation": null, - "id": 1203, + "id": 1155, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -16508,16 +15839,16 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1199, + "id": 1151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1198, + "id": 1150, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "12981:11:0", + "scope": 1155, + "src": "11960:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16525,10 +15856,10 @@ "typeString": "address" }, "typeName": { - "id": 1197, + "id": 1149, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12981:7:0", + "src": "11960:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16538,20 +15869,20 @@ "visibility": "internal" } ], - "src": "12980:13:0" + "src": "11959:13:0" }, "payable": false, "returnParameters": { - "id": 1202, + "id": 1154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1201, + "id": 1153, "name": "", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "13019:7:0", + "scope": 1155, + "src": "11998:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16559,10 +15890,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1200, + "id": 1152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13019:7:0", + "src": "11998:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16572,10 +15903,10 @@ "visibility": "internal" } ], - "src": "13018:9:0" + "src": "11997:9:0" }, - "scope": 1221, - "src": "12962:66:0", + "scope": 1173, + "src": "11941:66:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -16583,7 +15914,7 @@ { "body": null, "documentation": null, - "id": 1212, + "id": 1164, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -16591,16 +15922,16 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1208, + "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1205, + "id": 1157, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13049:10:0", + "scope": 1164, + "src": "12028:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16608,10 +15939,10 @@ "typeString": "address" }, "typeName": { - "id": 1204, + "id": 1156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13049:7:0", + "src": "12028:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16622,11 +15953,11 @@ }, { "constant": false, - "id": 1207, + "id": 1159, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13061:13:0", + "scope": 1164, + "src": "12040:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16634,10 +15965,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1158, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13061:7:0", + "src": "12040:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16647,20 +15978,20 @@ "visibility": "internal" } ], - "src": "13048:27:0" + "src": "12027:27:0" }, "payable": false, "returnParameters": { - "id": 1211, + "id": 1163, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1210, + "id": 1162, "name": "", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13092:4:0", + "scope": 1164, + "src": "12071:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16668,10 +15999,10 @@ "typeString": "bool" }, "typeName": { - "id": 1209, + "id": 1161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13092:4:0", + "src": "12071:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16681,10 +16012,10 @@ "visibility": "internal" } ], - "src": "13091:6:0" + "src": "12070:6:0" }, - "scope": 1221, - "src": "13031:67:0", + "scope": 1173, + "src": "12010:67:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -16692,21 +16023,21 @@ { "anonymous": false, "documentation": null, - "id": 1220, + "id": 1172, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1219, + "id": 1171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1214, + "id": 1166, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13116:20:0", + "scope": 1172, + "src": "12095:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16714,10 +16045,10 @@ "typeString": "address" }, "typeName": { - "id": 1213, + "id": 1165, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13116:7:0", + "src": "12095:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16728,12 +16059,12 @@ }, { "constant": false, - "id": 1216, + "id": 1168, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13138:18:0", + "scope": 1172, + "src": "12117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16741,10 +16072,10 @@ "typeString": "address" }, "typeName": { - "id": 1215, + "id": 1167, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13138:7:0", + "src": "12117:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16755,12 +16086,12 @@ }, { "constant": false, - "id": 1218, + "id": 1170, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13158:13:0", + "scope": 1172, + "src": "12137:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16768,10 +16099,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1217, + "id": 1169, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13158:7:0", + "src": "12137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16781,13 +16112,13 @@ "visibility": "internal" } ], - "src": "13115:57:0" + "src": "12094:57:0" }, - "src": "13101:72:0" + "src": "12080:72:0" } ], - "scope": 1394, - "src": "12908:267:0" + "scope": 1346, + "src": "11887:267:0" }, { "baseContracts": [ @@ -16795,31 +16126,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1222, + "id": 1174, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1221, - "src": "13285:10:0", + "referencedDeclaration": 1173, + "src": "12264:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$1221", + "typeIdentifier": "t_contract$_ERC20Basic_$1173", "typeString": "contract ERC20Basic" } }, - "id": 1223, + "id": 1175, "nodeType": "InheritanceSpecifier", - "src": "13285:10:0" + "src": "12264:10:0" } ], "contractDependencies": [ - 1221 + 1173 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 1261, + "id": 1213, "linearizedBaseContracts": [ - 1261, - 1221 + 1213, + 1173 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -16827,7 +16158,7 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1184, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -16835,16 +16166,16 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1225, + "id": 1177, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13319:13:0", + "scope": 1184, + "src": "12298:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16852,10 +16183,10 @@ "typeString": "address" }, "typeName": { - "id": 1224, + "id": 1176, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13319:7:0", + "src": "12298:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16866,11 +16197,11 @@ }, { "constant": false, - "id": 1227, + "id": 1179, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13334:15:0", + "scope": 1184, + "src": "12313:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16878,10 +16209,10 @@ "typeString": "address" }, "typeName": { - "id": 1226, + "id": 1178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13334:7:0", + "src": "12313:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16891,20 +16222,20 @@ "visibility": "internal" } ], - "src": "13318:32:0" + "src": "12297:32:0" }, "payable": false, "returnParameters": { - "id": 1231, + "id": 1183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1182, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13376:7:0", + "scope": 1184, + "src": "12355:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16912,10 +16243,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1181, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13376:7:0", + "src": "12355:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16925,10 +16256,10 @@ "visibility": "internal" } ], - "src": "13375:9:0" + "src": "12354:9:0" }, - "scope": 1261, - "src": "13300:85:0", + "scope": 1213, + "src": "12279:85:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -16936,7 +16267,7 @@ { "body": null, "documentation": null, - "id": 1243, + "id": 1195, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -16944,16 +16275,16 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1239, + "id": 1191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1186, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13410:12:0", + "scope": 1195, + "src": "12389:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16961,10 +16292,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13410:7:0", + "src": "12389:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16975,11 +16306,11 @@ }, { "constant": false, - "id": 1236, + "id": 1188, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13424:10:0", + "scope": 1195, + "src": "12403:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16987,10 +16318,10 @@ "typeString": "address" }, "typeName": { - "id": 1235, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13424:7:0", + "src": "12403:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17001,11 +16332,11 @@ }, { "constant": false, - "id": 1238, + "id": 1190, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13436:13:0", + "scope": 1195, + "src": "12415:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17013,10 +16344,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1237, + "id": 1189, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13436:7:0", + "src": "12415:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17026,20 +16357,20 @@ "visibility": "internal" } ], - "src": "13409:41:0" + "src": "12388:41:0" }, "payable": false, "returnParameters": { - "id": 1242, + "id": 1194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1193, "name": "", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13467:4:0", + "scope": 1195, + "src": "12446:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17047,10 +16378,10 @@ "typeString": "bool" }, "typeName": { - "id": 1240, + "id": 1192, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13467:4:0", + "src": "12446:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17060,10 +16391,10 @@ "visibility": "internal" } ], - "src": "13466:6:0" + "src": "12445:6:0" }, - "scope": 1261, - "src": "13388:85:0", + "scope": 1213, + "src": "12367:85:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -17071,7 +16402,7 @@ { "body": null, "documentation": null, - "id": 1252, + "id": 1204, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -17079,16 +16410,16 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1248, + "id": 1200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1245, + "id": 1197, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13493:15:0", + "scope": 1204, + "src": "12472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17096,10 +16427,10 @@ "typeString": "address" }, "typeName": { - "id": 1244, + "id": 1196, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13493:7:0", + "src": "12472:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17110,11 +16441,11 @@ }, { "constant": false, - "id": 1247, + "id": 1199, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13510:13:0", + "scope": 1204, + "src": "12489:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17122,10 +16453,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1246, + "id": 1198, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13510:7:0", + "src": "12489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17135,20 +16466,20 @@ "visibility": "internal" } ], - "src": "13492:32:0" + "src": "12471:32:0" }, "payable": false, "returnParameters": { - "id": 1251, + "id": 1203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1202, "name": "", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13541:4:0", + "scope": 1204, + "src": "12520:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17156,10 +16487,10 @@ "typeString": "bool" }, "typeName": { - "id": 1249, + "id": 1201, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13541:4:0", + "src": "12520:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17169,10 +16500,10 @@ "visibility": "internal" } ], - "src": "13540:6:0" + "src": "12519:6:0" }, - "scope": 1261, - "src": "13476:71:0", + "scope": 1213, + "src": "12455:71:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -17180,21 +16511,21 @@ { "anonymous": false, "documentation": null, - "id": 1260, + "id": 1212, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1259, + "id": 1211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1254, + "id": 1206, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13565:21:0", + "scope": 1212, + "src": "12544:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17202,10 +16533,10 @@ "typeString": "address" }, "typeName": { - "id": 1253, + "id": 1205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13565:7:0", + "src": "12544:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17216,12 +16547,12 @@ }, { "constant": false, - "id": 1256, + "id": 1208, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13588:23:0", + "scope": 1212, + "src": "12567:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17229,10 +16560,10 @@ "typeString": "address" }, "typeName": { - "id": 1255, + "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13588:7:0", + "src": "12567:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -17243,12 +16574,12 @@ }, { "constant": false, - "id": 1258, + "id": 1210, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13613:13:0", + "scope": 1212, + "src": "12592:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17256,10 +16587,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1257, + "id": 1209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13613:7:0", + "src": "12592:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17269,13 +16600,13 @@ "visibility": "internal" } ], - "src": "13564:63:0" + "src": "12543:63:0" }, - "src": "13550:78:0" + "src": "12529:78:0" } ], - "scope": 1394, - "src": "13267:363:0" + "scope": 1346, + "src": "12246:363:0" }, { "baseContracts": [], @@ -17283,31 +16614,31 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 1393, + "id": 1345, "linearizedBaseContracts": [ - 1393 + 1345 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1290, + "id": 1242, "nodeType": "Block", - "src": "13817:90:0", + "src": "12796:90:0", "statements": [ { "assignments": [ - 1271 + 1223 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1223, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13827:9:0", + "scope": 1243, + "src": "12806:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17315,10 +16646,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 1222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13827:7:0", + "src": "12806:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17328,26 +16659,26 @@ "visibility": "internal" } ], - "id": 1275, + "id": 1227, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1274, + "id": 1226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1272, + "id": 1224, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13839:1:0", + "referencedDeclaration": 1215, + "src": "12818:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17357,25 +16688,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1273, + "id": 1225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13843:1:0", + "referencedDeclaration": 1217, + "src": "12822:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13839:5:0", + "src": "12818:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13827:17:0" + "src": "12806:17:0" }, { "expression": { @@ -17387,7 +16718,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1285, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, @@ -17398,19 +16729,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1279, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1277, + "id": 1229, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13861:1:0", + "referencedDeclaration": 1215, + "src": "12840:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17421,14 +16752,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1278, + "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13866:1:0", + "src": "12845:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -17436,7 +16767,7 @@ }, "value": "0" }, - "src": "13861:6:0", + "src": "12840:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17450,7 +16781,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1284, + "id": 1236, "isConstant": false, "isLValue": false, "isPure": false, @@ -17461,19 +16792,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1282, + "id": 1234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1280, + "id": 1232, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13871:1:0", + "referencedDeclaration": 1223, + "src": "12850:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17483,18 +16814,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1281, + "id": 1233, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13875:1:0", + "referencedDeclaration": 1215, + "src": "12854:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:5:0", + "src": "12850:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17504,24 +16835,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1283, + "id": 1235, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13880:1:0", + "referencedDeclaration": 1217, + "src": "12859:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:10:0", + "src": "12850:10:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13861:20:0", + "src": "12840:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17535,18 +16866,18 @@ "typeString": "bool" } ], - "id": 1276, + "id": 1228, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "13854:6:0", + "referencedDeclaration": 1489, + "src": "12833:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, @@ -17554,39 +16885,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13854:28:0", + "src": "12833:28:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 1239, "nodeType": "ExpressionStatement", - "src": "13854:28:0" + "src": "12833:28:0" }, { "expression": { "argumentTypes": null, - "id": 1288, + "id": 1240, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13899:1:0", + "referencedDeclaration": 1223, + "src": "12878:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1269, - "id": 1289, + "functionReturnParameters": 1221, + "id": 1241, "nodeType": "Return", - "src": "13892:8:0" + "src": "12871:8:0" } ] }, "documentation": null, - "id": 1291, + "id": 1243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17594,16 +16925,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 1266, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1263, + "id": 1215, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13759:9:0", + "scope": 1243, + "src": "12738:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17611,10 +16942,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1214, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13759:7:0", + "src": "12738:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17625,11 +16956,11 @@ }, { "constant": false, - "id": 1265, + "id": 1217, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13770:9:0", + "scope": 1243, + "src": "12749:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17637,10 +16968,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1264, + "id": 1216, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13770:7:0", + "src": "12749:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17650,20 +16981,20 @@ "visibility": "internal" } ], - "src": "13758:22:0" + "src": "12737:22:0" }, "payable": false, "returnParameters": { - "id": 1269, + "id": 1221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1268, + "id": 1220, "name": "", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13808:7:0", + "scope": 1243, + "src": "12787:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17671,10 +17002,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1267, + "id": 1219, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13808:7:0", + "src": "12787:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17684,32 +17015,32 @@ "visibility": "internal" } ], - "src": "13807:9:0" + "src": "12786:9:0" }, - "scope": 1393, - "src": "13746:161:0", + "scope": 1345, + "src": "12725:161:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1308, + "id": 1260, "nodeType": "Block", - "src": "13984:216:0", + "src": "12963:216:0", "statements": [ { "assignments": [ - 1301 + 1253 ], "declarations": [ { "constant": false, - "id": 1301, + "id": 1253, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "14072:9:0", + "scope": 1261, + "src": "13051:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17717,10 +17048,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1300, + "id": 1252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14072:7:0", + "src": "13051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17730,26 +17061,26 @@ "visibility": "internal" } ], - "id": 1305, + "id": 1257, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1304, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1302, + "id": 1254, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1293, - "src": "14084:1:0", + "referencedDeclaration": 1245, + "src": "13063:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17759,49 +17090,49 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1303, + "id": 1255, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1295, - "src": "14088:1:0", + "referencedDeclaration": 1247, + "src": "13067:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14084:5:0", + "src": "13063:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14072:17:0" + "src": "13051:17:0" }, { "expression": { "argumentTypes": null, - "id": 1306, + "id": 1258, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "14192:1:0", + "referencedDeclaration": 1253, + "src": "13171:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1299, - "id": 1307, + "functionReturnParameters": 1251, + "id": 1259, "nodeType": "Return", - "src": "14185:8:0" + "src": "13164:8:0" } ] }, "documentation": null, - "id": 1309, + "id": 1261, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17809,16 +17140,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 1296, + "id": 1248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1293, + "id": 1245, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13926:9:0", + "scope": 1261, + "src": "12905:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17826,10 +17157,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1292, + "id": 1244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13926:7:0", + "src": "12905:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17840,11 +17171,11 @@ }, { "constant": false, - "id": 1295, + "id": 1247, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13937:9:0", + "scope": 1261, + "src": "12916:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17852,10 +17183,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1294, + "id": 1246, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13937:7:0", + "src": "12916:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17865,20 +17196,20 @@ "visibility": "internal" } ], - "src": "13925:22:0" + "src": "12904:22:0" }, "payable": false, "returnParameters": { - "id": 1299, + "id": 1251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1250, "name": "", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13975:7:0", + "scope": 1261, + "src": "12954:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17886,10 +17217,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1297, + "id": 1249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13975:7:0", + "src": "12954:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17899,19 +17230,19 @@ "visibility": "internal" } ], - "src": "13974:9:0" + "src": "12953:9:0" }, - "scope": 1393, - "src": "13913:287:0", + "scope": 1345, + "src": "12892:287:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1328, + "id": 1280, "nodeType": "Block", - "src": "14277:53:0", + "src": "13256:53:0", "statements": [ { "expression": { @@ -17923,19 +17254,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1321, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1319, + "id": 1271, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14294:1:0", + "referencedDeclaration": 1265, + "src": "13273:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17945,18 +17276,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 1320, + "id": 1272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14299:1:0", + "referencedDeclaration": 1263, + "src": "13278:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14294:6:0", + "src": "13273:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17970,18 +17301,18 @@ "typeString": "bool" } ], - "id": 1318, + "id": 1270, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14287:6:0", + "referencedDeclaration": 1489, + "src": "13266:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1322, + "id": 1274, "isConstant": false, "isLValue": false, "isPure": false, @@ -17989,15 +17320,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14287:14:0", + "src": "13266:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1323, + "id": 1275, "nodeType": "ExpressionStatement", - "src": "14287:14:0" + "src": "13266:14:0" }, { "expression": { @@ -18006,19 +17337,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1326, + "id": 1278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1324, + "id": 1276, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14318:1:0", + "referencedDeclaration": 1263, + "src": "13297:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18028,32 +17359,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1325, + "id": 1277, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14322:1:0", + "referencedDeclaration": 1265, + "src": "13301:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14318:5:0", + "src": "13297:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1317, - "id": 1327, + "functionReturnParameters": 1269, + "id": 1279, "nodeType": "Return", - "src": "14311:12:0" + "src": "13290:12:0" } ] }, "documentation": null, - "id": 1329, + "id": 1281, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -18061,16 +17392,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 1314, + "id": 1266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1311, + "id": 1263, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14219:9:0", + "scope": 1281, + "src": "13198:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18078,10 +17409,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1310, + "id": 1262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14219:7:0", + "src": "13198:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18092,11 +17423,11 @@ }, { "constant": false, - "id": 1313, + "id": 1265, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14230:9:0", + "scope": 1281, + "src": "13209:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18104,10 +17435,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1312, + "id": 1264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14230:7:0", + "src": "13209:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18117,20 +17448,20 @@ "visibility": "internal" } ], - "src": "14218:22:0" + "src": "13197:22:0" }, "payable": false, "returnParameters": { - "id": 1317, + "id": 1269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 1268, "name": "", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14268:7:0", + "scope": 1281, + "src": "13247:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18138,10 +17469,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1315, + "id": 1267, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14268:7:0", + "src": "13247:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18151,32 +17482,32 @@ "visibility": "internal" } ], - "src": "14267:9:0" + "src": "13246:9:0" }, - "scope": 1393, - "src": "14206:124:0", + "scope": 1345, + "src": "13185:124:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1352, + "id": 1304, "nodeType": "Block", - "src": "14407:76:0", + "src": "13386:76:0", "statements": [ { "assignments": [ - 1339 + 1291 ], "declarations": [ { "constant": false, - "id": 1339, + "id": 1291, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14417:9:0", + "scope": 1305, + "src": "13396:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18184,10 +17515,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1338, + "id": 1290, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14417:7:0", + "src": "13396:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18197,26 +17528,26 @@ "visibility": "internal" } ], - "id": 1343, + "id": 1295, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1342, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1340, + "id": 1292, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14429:1:0", + "referencedDeclaration": 1283, + "src": "13408:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18226,25 +17557,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1341, + "id": 1293, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "14433:1:0", + "referencedDeclaration": 1285, + "src": "13412:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14429:5:0", + "src": "13408:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14417:17:0" + "src": "13396:17:0" }, { "expression": { @@ -18256,19 +17587,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1347, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1345, + "id": 1297, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14451:1:0", + "referencedDeclaration": 1291, + "src": "13430:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18278,18 +17609,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1346, + "id": 1298, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14456:1:0", + "referencedDeclaration": 1283, + "src": "13435:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14451:6:0", + "src": "13430:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18303,18 +17634,18 @@ "typeString": "bool" } ], - "id": 1344, + "id": 1296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14444:6:0", + "referencedDeclaration": 1489, + "src": "13423:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1348, + "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, @@ -18322,39 +17653,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14444:14:0", + "src": "13423:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1349, + "id": 1301, "nodeType": "ExpressionStatement", - "src": "14444:14:0" + "src": "13423:14:0" }, { "expression": { "argumentTypes": null, - "id": 1350, + "id": 1302, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14475:1:0", + "referencedDeclaration": 1291, + "src": "13454:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1337, - "id": 1351, + "functionReturnParameters": 1289, + "id": 1303, "nodeType": "Return", - "src": "14468:8:0" + "src": "13447:8:0" } ] }, "documentation": null, - "id": 1353, + "id": 1305, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -18362,16 +17693,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 1334, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1331, + "id": 1283, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14349:9:0", + "scope": 1305, + "src": "13328:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18379,10 +17710,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1330, + "id": 1282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14349:7:0", + "src": "13328:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18393,11 +17724,11 @@ }, { "constant": false, - "id": 1333, + "id": 1285, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14360:9:0", + "scope": 1305, + "src": "13339:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18405,10 +17736,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14360:7:0", + "src": "13339:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18418,20 +17749,20 @@ "visibility": "internal" } ], - "src": "14348:22:0" + "src": "13327:22:0" }, "payable": false, "returnParameters": { - "id": 1337, + "id": 1289, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1336, + "id": 1288, "name": "", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14398:7:0", + "scope": 1305, + "src": "13377:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18439,10 +17770,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1335, + "id": 1287, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14398:7:0", + "src": "13377:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18452,32 +17783,32 @@ "visibility": "internal" } ], - "src": "14397:9:0" + "src": "13376:9:0" }, - "scope": 1393, - "src": "14336:147:0", + "scope": 1345, + "src": "13315:147:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1391, + "id": 1343, "nodeType": "Block", - "src": "14768:257:0", + "src": "13747:257:0", "statements": [ { "assignments": [ - 1365 + 1317 ], "declarations": [ { "constant": false, - "id": 1365, + "id": 1317, "name": "_numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14826:18:0", + "scope": 1344, + "src": "13805:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18485,10 +17816,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1364, + "id": 1316, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14826:7:0", + "src": "13805:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18498,18 +17829,18 @@ "visibility": "internal" } ], - "id": 1375, + "id": 1327, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1367, + "id": 1319, "name": "numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1355, - "src": "14851:9:0", + "referencedDeclaration": 1307, + "src": "13830:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18521,7 +17852,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1373, + "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, @@ -18529,14 +17860,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1368, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14862:2:0", + "src": "13841:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -18555,19 +17886,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1371, + "id": 1323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1369, + "id": 1321, "name": "precision", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "14869:9:0", + "referencedDeclaration": 1311, + "src": "13848:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18578,14 +17909,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1370, + "id": 1322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14879:1:0", + "src": "13858:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -18593,27 +17924,27 @@ }, "value": "1" }, - "src": "14869:11:0", + "src": "13848:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1372, + "id": 1324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14868:13:0", + "src": "13847:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14862:19:0", + "src": "13841:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18631,18 +17962,18 @@ "typeString": "uint256" } ], - "id": 1366, + "id": 1318, "name": "mul", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "14847:3:0", + "referencedDeclaration": 1243, + "src": "13826:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1374, + "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, @@ -18650,27 +17981,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14847:35:0", + "src": "13826:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14826:56:0" + "src": "13805:56:0" }, { "assignments": [ - 1377 + 1329 ], "declarations": [ { "constant": false, - "id": 1377, + "id": 1329, "name": "_quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14931:17:0", + "scope": 1344, + "src": "13910:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18678,10 +18009,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1376, + "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14931:7:0", + "src": "13910:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18691,14 +18022,14 @@ "visibility": "internal" } ], - "id": 1387, + "id": 1339, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1386, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, @@ -18712,7 +18043,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1383, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": false, @@ -18722,12 +18053,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1379, + "id": 1331, "name": "_numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "14956:10:0", + "referencedDeclaration": 1317, + "src": "13935:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18735,12 +18066,12 @@ }, { "argumentTypes": null, - "id": 1380, + "id": 1332, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1357, - "src": "14968:11:0", + "referencedDeclaration": 1309, + "src": "13947:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18758,18 +18089,18 @@ "typeString": "uint256" } ], - "id": 1378, + "id": 1330, "name": "div", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "14952:3:0", + "referencedDeclaration": 1261, + "src": "13931:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1381, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -18777,7 +18108,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14952:28:0", + "src": "13931:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18788,14 +18119,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "35", - "id": 1382, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14983:1:0", + "src": "13962:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_5_by_1", @@ -18803,21 +18134,21 @@ }, "value": "5" }, - "src": "14952:32:0", + "src": "13931:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1384, + "id": 1336, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14951:34:0", + "src": "13930:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18828,14 +18159,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1385, + "id": 1337, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14988:2:0", + "src": "13967:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -18843,14 +18174,14 @@ }, "value": "10" }, - "src": "14951:39:0", + "src": "13930:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14931:59:0" + "src": "13910:59:0" }, { "expression": { @@ -18858,40 +18189,40 @@ "components": [ { "argumentTypes": null, - "id": 1388, + "id": 1340, "name": "_quotient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "15008:9:0", + "referencedDeclaration": 1329, + "src": "13987:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1389, + "id": 1341, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "15007:11:0", + "src": "13986:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1363, - "id": 1390, + "functionReturnParameters": 1315, + "id": 1342, "nodeType": "Return", - "src": "15000:18:0" + "src": "13979:18:0" } ] }, "documentation": null, - "id": 1392, + "id": 1344, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -18899,16 +18230,16 @@ "name": "percent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1360, + "id": 1312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1355, + "id": 1307, "name": "numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14665:17:0", + "scope": 1344, + "src": "13644:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18916,10 +18247,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1354, + "id": 1306, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14665:7:0", + "src": "13644:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18930,11 +18261,11 @@ }, { "constant": false, - "id": 1357, + "id": 1309, "name": "denominator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14684:19:0", + "scope": 1344, + "src": "13663:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18942,10 +18273,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1356, + "id": 1308, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14684:7:0", + "src": "13663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18956,11 +18287,11 @@ }, { "constant": false, - "id": 1359, + "id": 1311, "name": "precision", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14705:17:0", + "scope": 1344, + "src": "13684:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18968,10 +18299,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1358, + "id": 1310, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14705:7:0", + "src": "13684:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18981,20 +18312,20 @@ "visibility": "internal" } ], - "src": "14664:59:0" + "src": "13643:59:0" }, "payable": false, "returnParameters": { - "id": 1363, + "id": 1315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1362, + "id": 1314, "name": "quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14750:16:0", + "scope": 1344, + "src": "13729:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19002,10 +18333,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1361, + "id": 1313, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14750:7:0", + "src": "13729:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19015,41 +18346,38 @@ "visibility": "internal" } ], - "src": "14749:18:0" + "src": "13728:18:0" }, - "scope": 1393, - "src": "14648:377:0", + "scope": 1345, + "src": "13627:377:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1394, - "src": "13723:1304:0" + "scope": 1346, + "src": "12702:1304:0" } ], - "src": "0:15029:0" + "src": "0:14008:0" }, "legacyAST": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "exportedSymbols": { "Doneth": [ - 1194 + 1146 ], "ERC20": [ - 1261 + 1213 ], "ERC20Basic": [ - 1221 - ], - "Ownable": [ - 48 + 1173 ], "SafeMath": [ - 1393 + 1345 ] }, - "id": 1394, + "id": 1346, "nodeType": "SourceUnit", "nodes": [ { @@ -19069,20 +18397,20 @@ "contractKind": "contract", "documentation": "@title Doneth (Doneth)\n@dev Doneth is a contract that allows shared access to funds\nin the form of Ether and ERC20 tokens. It is especially relevant\nto donation based projects. The admins of the contract determine \nwho is a member, and each member gets a number of shares. The \nnumber of shares each member has determines how much Ether/ERC20 \nthe member can withdraw from the contract.", "fullyImplemented": true, - "id": 48, + "id": 1146, "linearizedBaseContracts": [ - 48 + 1146 ], - "name": "Ownable", + "name": "Doneth", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 3, - "name": "owner", + "name": "implementation", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "640:20:0", + "scope": 1146, + "src": "467:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19093,7 +18421,33 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "640:7:0", + "src": "467:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1146, + "src": "557:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19104,26 +18458,26 @@ }, { "body": { - "id": 11, + "id": 13, "nodeType": "Block", - "src": "693:34:0", + "src": "610:34:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 9, + "id": 11, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 6, + "id": 8, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "703:5:0", + "referencedDeclaration": 5, + "src": "620:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19135,18 +18489,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 7, + "id": 9, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "711:2:0", + "referencedDeclaration": 1512, + "src": "628:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 8, + "id": 10, "isConstant": false, "isLValue": false, "isPure": false, @@ -19154,56 +18508,56 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "711:9:0", + "src": "628:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "703:17:0", + "src": "620:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 10, + "id": 12, "nodeType": "ExpressionStatement", - "src": "703:17:0" + "src": "620:17:0" } ] }, "documentation": null, - "id": 12, + "id": 14, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 4, + "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "683:2:0" + "src": "600:2:0" }, "payable": false, "returnParameters": { - "id": 5, + "id": 7, "nodeType": "ParameterList", "parameters": [], - "src": "693:0:0" + "src": "610:0:0" }, - "scope": 48, - "src": "667:60:0", + "scope": 1146, + "src": "584:60:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 27, + "id": 29, "nodeType": "Block", - "src": "754:78:0", + "src": "671:78:0", "statements": [ { "expression": { @@ -19215,7 +18569,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 23, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -19226,7 +18580,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18, + "id": 20, "isConstant": false, "isLValue": false, "isPure": false, @@ -19235,18 +18589,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 15, + "id": 17, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "772:3:0", + "referencedDeclaration": 1500, + "src": "689:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 16, + "id": 18, "isConstant": false, "isLValue": false, "isPure": false, @@ -19254,7 +18608,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "772:10:0", + "src": "689:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19264,18 +18618,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 17, + "id": 19, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "786:5:0", + "referencedDeclaration": 5, + "src": "703:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "772:19:0", + "src": "689:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19289,7 +18643,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 22, + "id": 24, "isConstant": false, "isLValue": false, "isPure": false, @@ -19298,18 +18652,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 19, + "id": 21, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "795:2:0", + "referencedDeclaration": 1512, + "src": "712:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 20, + "id": 22, "isConstant": false, "isLValue": false, "isPure": false, @@ -19317,7 +18671,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "795:9:0", + "src": "712:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19327,24 +18681,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 21, + "id": 23, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "808:5:0", + "referencedDeclaration": 5, + "src": "725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "795:18:0", + "src": "712:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "772:41:0", + "src": "689:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19358,21 +18712,21 @@ "typeString": "bool" } ], - "id": 14, + "id": 16, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1514, - "src": "764:7:0", + "referencedDeclaration": 1503, + "src": "681:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 24, + "id": 26, "isConstant": false, "isLValue": false, "isPure": false, @@ -19380,41 +18734,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "764:50:0", + "src": "681:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25, + "id": 27, "nodeType": "ExpressionStatement", - "src": "764:50:0" + "src": "681:50:0" }, { - "id": 26, + "id": 28, "nodeType": "PlaceholderStatement", - "src": "824:1:0" + "src": "741:1:0" } ] }, "documentation": null, - "id": 28, + "id": 30, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 13, + "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "751:2:0" + "src": "668:2:0" }, - "src": "733:99:0", + "src": "650:99:0", "visibility": "internal" }, { "body": { - "id": 46, + "id": 48, "nodeType": "Block", - "src": "900:85:0", + "src": "817:85:0", "statements": [ { "condition": { @@ -19423,19 +18777,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 39, + "id": 41, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 35, + "id": 37, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "914:8:0", + "referencedDeclaration": 32, + "src": "831:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19449,14 +18803,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 37, + "id": 39, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "934:1:0", + "src": "851:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -19472,20 +18826,20 @@ "typeString": "int_const 0" } ], - "id": 36, + "id": 38, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "926:7:0", + "src": "843:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 38, + "id": 40, "isConstant": false, "isLValue": false, "isPure": true, @@ -19493,43 +18847,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "926:10:0", + "src": "843:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "914:22:0", + "src": "831:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 45, + "id": 47, "nodeType": "IfStatement", - "src": "910:69:0", + "src": "827:69:0", "trueBody": { - "id": 44, + "id": 46, "nodeType": "Block", - "src": "938:41:0", + "src": "855:41:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 42, + "id": 44, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 40, + "id": 42, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "952:5:0", + "referencedDeclaration": 5, + "src": "869:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19539,26 +18893,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 41, + "id": 43, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "960:8:0", + "referencedDeclaration": 32, + "src": "877:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "952:16:0", + "src": "869:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 43, + "id": 45, "nodeType": "ExpressionStatement", - "src": "952:16:0" + "src": "869:16:0" } ] } @@ -19566,44 +18920,44 @@ ] }, "documentation": null, - "id": 47, + "id": 49, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 33, + "id": 35, "modifierName": { "argumentTypes": null, - "id": 32, + "id": 34, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "883:9:0", + "referencedDeclaration": 30, + "src": "800:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "883:9:0" + "src": "800:9:0" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 31, + "id": 33, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30, + "id": 32, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 47, - "src": "865:16:0", + "scope": 49, + "src": "782:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19611,10 +18965,10 @@ "typeString": "address" }, "typeName": { - "id": 29, + "id": 31, "name": "address", "nodeType": "ElementaryTypeName", - "src": "865:7:0", + "src": "782:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19624,81 +18978,42 @@ "visibility": "internal" } ], - "src": "864:18:0" + "src": "781:18:0" }, "payable": false, "returnParameters": { - "id": 34, + "id": 36, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:0" + "src": "817:0:0" }, - "scope": 48, - "src": "838:147:0", + "scope": 1146, + "src": "755:147:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" - } - ], - "scope": 1394, - "src": "617:370:0" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 49, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "1008:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$48", - "typeString": "contract Ownable" - } - }, - "id": 50, - "nodeType": "InheritanceSpecifier", - "src": "1008:7:0" - } - ], - "contractDependencies": [ - 48 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1194, - "linearizedBaseContracts": [ - 1194, - 48 - ], - "name": "Doneth", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "id": 53, + "id": 52, "libraryName": { "contractScope": null, - "id": 51, + "id": 50, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1393, - "src": "1028:8:0", + "referencedDeclaration": 1345, + "src": "914:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$1393", + "typeIdentifier": "t_contract$_SafeMath_$1345", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1022:27:0", + "src": "908:27:0", "typeName": { - "id": 52, + "id": 51, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1041:7:0", + "src": "927:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19707,11 +19022,11 @@ }, { "constant": false, - "id": 55, + "id": 54, "name": "initialized", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1057:23:0", + "scope": 1146, + "src": "943:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19719,10 +19034,10 @@ "typeString": "bool" }, "typeName": { - "id": 54, + "id": 53, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1057:4:0", + "src": "943:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19733,11 +19048,11 @@ }, { "constant": false, - "id": 57, + "id": 56, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1115:18:0", + "scope": 1146, + "src": "1001:18:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19745,10 +19060,10 @@ "typeString": "string" }, "typeName": { - "id": 56, + "id": 55, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1115:6:0", + "src": "1001:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -19759,11 +19074,11 @@ }, { "constant": false, - "id": 59, + "id": 58, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1186:26:0", + "scope": 1146, + "src": "1072:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19771,10 +19086,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 57, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1186:7:0", + "src": "1072:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19785,11 +19100,11 @@ }, { "constant": false, - "id": 61, + "id": 60, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1265:29:0", + "scope": 1146, + "src": "1151:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19797,10 +19112,10 @@ "typeString": "uint256" }, "typeName": { - "id": 60, + "id": 59, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1265:7:0", + "src": "1151:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19811,11 +19126,11 @@ }, { "constant": false, - "id": 63, + "id": 62, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1354:33:0", + "scope": 1146, + "src": "1240:33:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19823,10 +19138,10 @@ "typeString": "uint256" }, "typeName": { - "id": 62, + "id": 61, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1354:7:0", + "src": "1240:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19837,11 +19152,11 @@ }, { "constant": true, - "id": 66, + "id": 65, "name": "PRECISION", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1454:38:0", + "scope": 1146, + "src": "1340:38:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19849,10 +19164,10 @@ "typeString": "uint256" }, "typeName": { - "id": 64, + "id": 63, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1454:7:0", + "src": "1340:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19861,14 +19176,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 65, + "id": 64, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1490:2:0", + "src": "1376:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -19880,11 +19195,11 @@ }, { "constant": false, - "id": 68, + "id": 67, "name": "sharedExpense", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1546:28:0", + "scope": 1146, + "src": "1432:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19892,10 +19207,10 @@ "typeString": "uint256" }, "typeName": { - "id": 67, + "id": 66, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1546:7:0", + "src": "1432:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19906,11 +19221,11 @@ }, { "constant": false, - "id": 70, + "id": 69, "name": "sharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1580:37:0", + "scope": 1146, + "src": "1466:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19918,10 +19233,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 68, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1580:7:0", + "src": "1466:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19932,44 +19247,44 @@ }, { "constant": false, - "id": 74, + "id": 73, "name": "members", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1661:41:0", + "scope": 1146, + "src": "1547:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "typeName": { - "id": 73, + "id": 72, "keyType": { - "id": 71, + "id": 70, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1669:7:0", + "src": "1555:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1661:26:0", + "src": "1547:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "valueType": { "contractScope": null, - "id": 72, + "id": 71, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "1680:6:0", + "referencedDeclaration": 91, + "src": "1566:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } } @@ -19979,11 +19294,11 @@ }, { "constant": false, - "id": 77, + "id": 76, "name": "memberKeys", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1708:27:0", + "scope": 1146, + "src": "1594:27:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19992,19 +19307,19 @@ }, "typeName": { "baseType": { - "id": 75, + "id": 74, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1708:7:0", + "src": "1594:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 76, + "id": 75, "length": null, "nodeType": "ArrayTypeName", - "src": "1708:9:0", + "src": "1594:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -20015,15 +19330,15 @@ }, { "canonicalName": "Doneth.Member", - "id": 92, + "id": 91, "members": [ { "constant": false, - "id": 79, + "id": 78, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1765:11:0", + "scope": 91, + "src": "1651:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20031,10 +19346,10 @@ "typeString": "bool" }, "typeName": { - "id": 78, + "id": 77, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1765:4:0", + "src": "1651:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20045,11 +19360,11 @@ }, { "constant": false, - "id": 81, + "id": 80, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1786:10:0", + "scope": 91, + "src": "1672:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20057,10 +19372,10 @@ "typeString": "bool" }, "typeName": { - "id": 80, + "id": 79, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1786:4:0", + "src": "1672:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20071,11 +19386,11 @@ }, { "constant": false, - "id": 83, + "id": 82, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1806:14:0", + "scope": 91, + "src": "1692:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20083,10 +19398,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 81, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1806:7:0", + "src": "1692:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20097,11 +19412,11 @@ }, { "constant": false, - "id": 85, + "id": 84, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1830:17:0", + "scope": 91, + "src": "1716:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20109,10 +19424,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 83, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1830:7:0", + "src": "1716:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20123,11 +19438,11 @@ }, { "constant": false, - "id": 87, + "id": 86, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1857:17:0", + "scope": 91, + "src": "1743:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20135,10 +19450,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 85, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1857:6:0", + "src": "1743:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -20149,11 +19464,11 @@ }, { "constant": false, - "id": 91, + "id": 90, "name": "tokensWithdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1884:43:0", + "scope": 91, + "src": "1770:43:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -20161,28 +19476,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 90, + "id": 89, "keyType": { - "id": 88, + "id": 87, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1892:7:0", + "src": "1778:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1884:27:0", + "src": "1770:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 89, + "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1903:7:0", + "src": "1789:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20195,161 +19510,60 @@ ], "name": "Member", "nodeType": "StructDefinition", - "scope": 1194, - "src": "1741:193:0", + "scope": 1146, + "src": "1627:193:0", "visibility": "public" }, { "constant": false, - "id": 96, + "id": 95, "name": "tokens", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2010:39:0", + "scope": 1146, + "src": "1896:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 95, + "id": 94, "keyType": { - "id": 93, + "id": 92, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:7:0", + "src": "1904:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2010:25:0", + "src": "1896:27:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "valueType": { - "contractScope": null, - "id": 94, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 104, - "src": "2029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage_ptr", - "typeString": "struct Doneth.Token" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "tokenKeys", - "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2055:26:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", + "id": 93, + "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2055:7:0", + "src": "1915:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2055:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" } }, "value": null, "visibility": "public" }, - { - "canonicalName": "Doneth.Token", - "id": 104, - "members": [ - { - "constant": false, - "id": 101, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2110:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 100, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2110:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "name": "totalWithdrawn", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2131:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 102, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2131:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Token", - "nodeType": "StructDefinition", - "scope": 1194, - "src": "2087:73:0", - "visibility": "public" - }, { "body": { - "id": 223, + "id": 179, "nodeType": "Block", - "src": "2363:911:0", + "src": "1967:484:0", "statements": [ { "expression": { @@ -20357,7 +19571,7 @@ "arguments": [ { "argumentTypes": null, - "id": 113, + "id": 100, "isConstant": false, "isLValue": false, "isPure": false, @@ -20365,15 +19579,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2381:12:0", + "src": "1985:12:0", "subExpression": { "argumentTypes": null, - "id": 112, + "id": 99, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2382:11:0", + "referencedDeclaration": 54, + "src": "1986:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20383,24 +19597,6 @@ "typeIdentifier": "t_bool", "typeString": "bool" } - }, - { - "argumentTypes": null, - "hexValue": "414c524541445920494e495449414c495a4544", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2395:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" - }, - "value": "ALREADY INITIALIZED" } ], "expression": { @@ -20408,27 +19604,23 @@ { "typeIdentifier": "t_bool", "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" } ], - "id": 111, + "id": 98, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1515, - "src": "2373:7:0", + "referencedDeclaration": 1503, + "src": "1977:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 115, + "id": 101, "isConstant": false, "isLValue": false, "isPure": false, @@ -20436,32 +19628,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2373:44:0", + "src": "1977:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 116, + "id": 102, "nodeType": "ExpressionStatement", - "src": "2373:44:0" + "src": "1977:21:0" }, { "expression": { "argumentTypes": null, - "id": 119, + "id": 105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 117, + "id": 103, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2427:11:0", + "referencedDeclaration": 54, + "src": "2008:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20472,14 +19664,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 118, + "id": 104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2441:4:0", + "src": "2022:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20487,507 +19679,165 @@ }, "value": "true" }, - "src": "2427:18:0", + "src": "2008:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 120, + "id": 106, "nodeType": "ExpressionStatement", - "src": "2427:18:0" + "src": "2008:18:0" }, { "expression": { "argumentTypes": null, - "id": 124, + "id": 110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 121, + "id": 107, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "2455:5:0", + "referencedDeclaration": 5, + "src": "2037:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 122, - "name": "tx", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2463:2:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_transaction", - "typeString": "tx" - } - }, - "id": 123, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "origin", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2463:9:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "src": "2455:17:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "id": 125, - "nodeType": "ExpressionStatement", - "src": "2455:17:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 129, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 126, - "name": "genesisBlockNumber", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "2482:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 127, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1501, - "src": "2503:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 128, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2503:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2482:33:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 130, - "nodeType": "ExpressionStatement", - "src": "2482:33:0" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 132, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2535:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2529:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2529:20:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2529:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2559:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2529:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 140, - "nodeType": "IfStatement", - "src": "2525:46:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 137, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2563:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2563:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2563:8:0" - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 142, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2591:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 141, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2585:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2585:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2585:26:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2614:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" + } }, - "src": "2585:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 150, - "nodeType": "IfStatement", - "src": "2581:45:0", - "trueBody": { - "expression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "arguments": [], "expression": { - "argumentTypes": [], - "id": 147, - "name": "revert", + "argumentTypes": null, + "id": 108, + "name": "tx", "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2618:6:0", + "overloadedDeclarations": [], + "referencedDeclaration": 1512, + "src": "2045:2:0", "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" + "typeIdentifier": "t_magic_transaction", + "typeString": "tx" } }, - "id": 148, + "id": 109, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2618:8:0", + "memberName": "origin", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2045:9:0", "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:8:0" - } + "src": "2037:17:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 111, + "nodeType": "ExpressionStatement", + "src": "2037:17:0" }, { "expression": { "argumentTypes": null, - "id": 153, + "id": 115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 151, - "name": "name", + "id": 112, + "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "2636:4:0", + "referencedDeclaration": 62, + "src": "2064:18:0", "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 152, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2643:13:0", + "expression": { + "argumentTypes": null, + "id": 113, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1490, + "src": "2085:5:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "number", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2085:12:0", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "2636:20:0", + "src": "2064:33:0", "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 154, + "id": 116, "nodeType": "ExpressionStatement", - "src": "2636:20:0" + "src": "2064:33:0" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 156, + "id": 118, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2721:23:0", + "scope": 180, + "src": "2108:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 155, + "id": 117, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "2721:6:0", + "referencedDeclaration": 91, + "src": "2108:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -20995,15 +19845,15 @@ "visibility": "internal" } ], - "id": 157, + "id": 119, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "2721:23:0" + "src": "2108:23:0" }, { "expression": { "argumentTypes": null, - "id": 162, + "id": 124, "isConstant": false, "isLValue": false, "isPure": false, @@ -21012,26 +19862,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 158, + "id": 120, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2754:9:0", + "referencedDeclaration": 118, + "src": "2141:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 160, + "id": 122, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "2754:16:0", + "referencedDeclaration": 78, + "src": "2141:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21042,14 +19892,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 161, + "id": 123, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2773:4:0", + "src": "2160:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -21057,20 +19907,20 @@ }, "value": "true" }, - "src": "2754:23:0", + "src": "2141:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 163, + "id": 125, "nodeType": "ExpressionStatement", - "src": "2754:23:0" + "src": "2141:23:0" }, { "expression": { "argumentTypes": null, - "id": 168, + "id": 130, "isConstant": false, "isLValue": false, "isPure": false, @@ -21079,26 +19929,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 164, + "id": 126, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2787:9:0", + "referencedDeclaration": 118, + "src": "2174:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 166, + "id": 128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "2787:15:0", + "referencedDeclaration": 80, + "src": "2174:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21109,14 +19959,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 167, + "id": 129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2805:4:0", + "src": "2192:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -21124,82 +19974,20 @@ }, "value": "true" }, - "src": "2787:22:0", + "src": "2174:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "2787:22:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 170, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2819:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 172, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "memberName", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "2819:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 173, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2842:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2819:35:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 175, + "id": 131, "nodeType": "ExpressionStatement", - "src": "2819:35:0" + "src": "2174:22:0" }, { "expression": { "argumentTypes": null, - "id": 181, + "id": 137, "isConstant": false, "isLValue": false, "isPure": false, @@ -21208,34 +19996,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 176, + "id": 132, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "2865:7:0", + "referencedDeclaration": 73, + "src": "2206:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 179, + "id": 135, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 177, + "id": 133, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2873:2:0", + "referencedDeclaration": 1512, + "src": "2214:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 178, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -21243,7 +20031,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2873:9:0", + "src": "2214:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21254,9 +20042,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2865:18:0", + "src": "2206:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -21264,26 +20052,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 180, + "id": 136, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2886:9:0", + "referencedDeclaration": 118, + "src": "2227:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "2865:30:0", + "src": "2206:30:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 182, + "id": 138, "nodeType": "ExpressionStatement", - "src": "2865:30:0" + "src": "2206:30:0" }, { "expression": { @@ -21293,18 +20081,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 186, + "id": 142, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2921:2:0", + "referencedDeclaration": 1512, + "src": "2262:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 187, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -21312,7 +20100,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2921:9:0", + "src": "2262:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21328,18 +20116,18 @@ ], "expression": { "argumentTypes": null, - "id": 183, + "id": 139, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "2905:10:0", + "referencedDeclaration": 76, + "src": "2246:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 185, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -21347,13 +20135,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2905:15:0", + "src": "2246:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 188, + "id": 144, "isConstant": false, "isLValue": false, "isPure": false, @@ -21361,32 +20149,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2905:26:0", + "src": "2246:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 189, + "id": 145, "nodeType": "ExpressionStatement", - "src": "2905:26:0" + "src": "2246:26:0" }, { "expression": { "argumentTypes": null, - "id": 195, + "id": 151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 190, + "id": 146, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2981:11:0", + "referencedDeclaration": 58, + "src": "2283:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21400,14 +20188,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 193, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3011:1:0", + "src": "2313:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -21425,32 +20213,32 @@ ], "expression": { "argumentTypes": null, - "id": 191, + "id": 147, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2995:11:0", + "referencedDeclaration": 58, + "src": "2297:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 192, + "id": 148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "2995:15:0", + "referencedDeclaration": 1305, + "src": "2297:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 194, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, @@ -21458,26 +20246,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2995:18:0", + "src": "2297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2981:32:0", + "src": "2283:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 196, + "id": 152, "nodeType": "ExpressionStatement", - "src": "2981:32:0" + "src": "2283:32:0" }, { "expression": { "argumentTypes": null, - "id": 210, + "id": 166, "isConstant": false, "isLValue": false, "isPure": false, @@ -21488,34 +20276,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 197, + "id": 153, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3023:7:0", + "referencedDeclaration": 73, + "src": "2325:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 200, + "id": 156, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 198, + "id": 154, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3031:2:0", + "referencedDeclaration": 1512, + "src": "2333:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 199, + "id": 155, "isConstant": false, "isLValue": false, "isPure": false, @@ -21523,7 +20311,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3031:9:0", + "src": "2333:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21534,21 +20322,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3023:18:0", + "src": "2325:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 201, + "id": 157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3023:25:0", + "referencedDeclaration": 82, + "src": "2325:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21562,14 +20350,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 208, + "id": 164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3081:1:0", + "src": "2383:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -21591,34 +20379,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 202, + "id": 158, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3051:7:0", + "referencedDeclaration": 73, + "src": "2353:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 205, + "id": 161, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 203, + "id": 159, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3059:2:0", + "referencedDeclaration": 1512, + "src": "2361:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 204, + "id": 160, "isConstant": false, "isLValue": false, "isPure": false, @@ -21626,7 +20414,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3059:9:0", + "src": "2361:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21637,41 +20425,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3051:18:0", + "src": "2353:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 206, + "id": 162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3051:25:0", + "referencedDeclaration": 82, + "src": "2353:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 207, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "3051:29:0", + "referencedDeclaration": 1305, + "src": "2353:29:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 209, + "id": 165, "isConstant": false, "isLValue": false, "isPure": false, @@ -21679,21 +20467,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3051:32:0", + "src": "2353:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3023:60:0", + "src": "2325:60:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 211, + "id": 167, "nodeType": "ExpressionStatement", - "src": "3023:60:0" + "src": "2325:60:0" }, { "expression": { @@ -21703,18 +20491,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 213, + "id": 169, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3102:2:0", + "referencedDeclaration": 1512, + "src": "2404:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 214, + "id": 170, "isConstant": false, "isLValue": false, "isPure": false, @@ -21722,7 +20510,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3102:9:0", + "src": "2404:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21731,14 +20519,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 215, + "id": 171, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3113:1:0", + "src": "2415:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -21752,34 +20540,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 216, + "id": 172, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3116:7:0", + "referencedDeclaration": 73, + "src": "2418:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 219, + "id": 175, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 217, + "id": 173, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3124:2:0", + "referencedDeclaration": 1512, + "src": "2426:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 218, + "id": 174, "isConstant": false, "isLValue": false, "isPure": false, @@ -21787,7 +20575,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3124:9:0", + "src": "2426:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21798,21 +20586,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3116:18:0", + "src": "2418:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 220, + "id": 176, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3116:25:0", + "referencedDeclaration": 82, + "src": "2418:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21834,18 +20622,18 @@ "typeString": "uint256" } ], - "id": 212, + "id": 168, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "3093:8:0", + "referencedDeclaration": 212, + "src": "2395:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 221, + "id": 177, "isConstant": false, "isLValue": false, "isPure": false, @@ -21853,20 +20641,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3093:49:0", + "src": "2395:49:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 222, + "id": 178, "nodeType": "ExpressionStatement", - "src": "3093:49:0" + "src": "2395:49:0" } ] }, "documentation": null, - "id": 224, + "id": 180, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -21874,73 +20662,20 @@ "name": "init", "nodeType": "FunctionDefinition", "parameters": { - "id": 109, + "id": 96, "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 106, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2313:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 105, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2313:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 108, - "name": "_founderName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2335:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 107, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2335:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2312:43:0" + "parameters": [], + "src": "1957:2:0" }, "payable": false, "returnParameters": { - "id": 110, + "id": 97, "nodeType": "ParameterList", "parameters": [], - "src": "2363:0:0" + "src": "1967:0:0" }, - "scope": 1194, - "src": "2299:975:0", + "scope": 1146, + "src": "1944:507:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -21948,21 +20683,21 @@ { "anonymous": false, "documentation": null, - "id": 230, + "id": 186, "name": "Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 229, + "id": 185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 226, + "id": 182, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3294:12:0", + "scope": 186, + "src": "2471:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21970,10 +20705,10 @@ "typeString": "address" }, "typeName": { - "id": 225, + "id": 181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:0", + "src": "2471:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21984,12 +20719,12 @@ }, { "constant": false, - "id": 228, + "id": 184, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3308:10:0", + "scope": 186, + "src": "2485:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21997,10 +20732,10 @@ "typeString": "uint256" }, "typeName": { - "id": 227, + "id": 183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3308:4:0", + "src": "2485:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22010,28 +20745,28 @@ "visibility": "internal" } ], - "src": "3293:26:0" + "src": "2470:26:0" }, - "src": "3280:40:0" + "src": "2457:40:0" }, { "anonymous": false, "documentation": null, - "id": 238, + "id": 194, "name": "Withdraw", "nodeType": "EventDefinition", "parameters": { - "id": 237, + "id": 193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 232, + "id": 188, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3340:12:0", + "scope": 194, + "src": "2517:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22039,10 +20774,10 @@ "typeString": "address" }, "typeName": { - "id": 231, + "id": 187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3340:7:0", + "src": "2517:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22053,12 +20788,12 @@ }, { "constant": false, - "id": 234, + "id": 190, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3354:10:0", + "scope": 194, + "src": "2531:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22066,10 +20801,10 @@ "typeString": "uint256" }, "typeName": { - "id": 233, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3354:4:0", + "src": "2531:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22080,12 +20815,12 @@ }, { "constant": false, - "id": 236, + "id": 192, "indexed": false, "name": "newTotalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3366:25:0", + "scope": 194, + "src": "2543:25:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22093,10 +20828,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 191, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3366:7:0", + "src": "2543:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22106,28 +20841,28 @@ "visibility": "internal" } ], - "src": "3339:53:0" + "src": "2516:53:0" }, - "src": "3325:68:0" + "src": "2502:68:0" }, { "anonymous": false, "documentation": null, - "id": 248, + "id": 204, "name": "TokenWithdraw", "nodeType": "EventDefinition", "parameters": { - "id": 247, + "id": 203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 196, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3418:12:0", + "scope": 204, + "src": "2595:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22135,10 +20870,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 195, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3418:7:0", + "src": "2595:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22149,12 +20884,12 @@ }, { "constant": false, - "id": 242, + "id": 198, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3432:10:0", + "scope": 204, + "src": "2609:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22162,10 +20897,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 197, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3432:4:0", + "src": "2609:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22176,12 +20911,12 @@ }, { "constant": false, - "id": 244, + "id": 200, "indexed": false, "name": "token", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3444:13:0", + "scope": 204, + "src": "2621:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22189,10 +20924,10 @@ "typeString": "address" }, "typeName": { - "id": 243, + "id": 199, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3444:7:0", + "src": "2621:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22203,12 +20938,12 @@ }, { "constant": false, - "id": 246, + "id": 202, "indexed": false, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3459:11:0", + "scope": 204, + "src": "2636:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22216,10 +20951,10 @@ "typeString": "uint256" }, "typeName": { - "id": 245, + "id": 201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3459:4:0", + "src": "2636:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22229,28 +20964,28 @@ "visibility": "internal" } ], - "src": "3417:54:0" + "src": "2594:54:0" }, - "src": "3398:74:0" + "src": "2575:74:0" }, { "anonymous": false, "documentation": null, - "id": 256, + "id": 212, "name": "AddShare", "nodeType": "EventDefinition", "parameters": { - "id": 255, + "id": 211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 250, + "id": 206, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3492:11:0", + "scope": 212, + "src": "2669:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22258,10 +20993,10 @@ "typeString": "address" }, "typeName": { - "id": 249, + "id": 205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "2669:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22272,12 +21007,12 @@ }, { "constant": false, - "id": 252, + "id": 208, "indexed": false, "name": "addedShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3505:19:0", + "scope": 212, + "src": "2682:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22285,10 +21020,10 @@ "typeString": "uint256" }, "typeName": { - "id": 251, + "id": 207, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3505:7:0", + "src": "2682:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22299,12 +21034,12 @@ }, { "constant": false, - "id": 254, + "id": 210, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3526:22:0", + "scope": 212, + "src": "2703:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22312,10 +21047,10 @@ "typeString": "uint256" }, "typeName": { - "id": 253, + "id": 209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3526:7:0", + "src": "2703:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22325,28 +21060,28 @@ "visibility": "internal" } ], - "src": "3491:58:0" + "src": "2668:58:0" }, - "src": "3477:73:0" + "src": "2654:73:0" }, { "anonymous": false, "documentation": null, - "id": 264, + "id": 220, "name": "RemoveShare", "nodeType": "EventDefinition", "parameters": { - "id": 263, + "id": 219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 258, + "id": 214, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3573:11:0", + "scope": 220, + "src": "2750:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22354,10 +21089,10 @@ "typeString": "address" }, "typeName": { - "id": 257, + "id": 213, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3573:7:0", + "src": "2750:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22368,12 +21103,12 @@ }, { "constant": false, - "id": 260, + "id": 216, "indexed": false, "name": "removedShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3586:21:0", + "scope": 220, + "src": "2763:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22381,10 +21116,10 @@ "typeString": "uint256" }, "typeName": { - "id": 259, + "id": 215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "2763:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22395,12 +21130,12 @@ }, { "constant": false, - "id": 262, + "id": 218, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3609:22:0", + "scope": 220, + "src": "2786:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22408,10 +21143,10 @@ "typeString": "uint256" }, "typeName": { - "id": 261, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3609:7:0", + "src": "2786:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22421,28 +21156,28 @@ "visibility": "internal" } ], - "src": "3572:60:0" + "src": "2749:60:0" }, - "src": "3555:78:0" + "src": "2732:78:0" }, { "anonymous": false, "documentation": null, - "id": 272, + "id": 228, "name": "ChangePrivilege", "nodeType": "EventDefinition", "parameters": { - "id": 271, + "id": 227, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 266, + "id": 222, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3660:11:0", + "scope": 228, + "src": "2837:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22450,10 +21185,10 @@ "typeString": "address" }, "typeName": { - "id": 265, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3660:7:0", + "src": "2837:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22464,12 +21199,12 @@ }, { "constant": false, - "id": 268, + "id": 224, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3673:13:0", + "scope": 228, + "src": "2850:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22477,10 +21212,10 @@ "typeString": "bool" }, "typeName": { - "id": 267, + "id": 223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3673:4:0", + "src": "2850:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22491,12 +21226,12 @@ }, { "constant": false, - "id": 270, + "id": 226, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3688:13:0", + "scope": 228, + "src": "2865:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22504,10 +21239,10 @@ "typeString": "bool" }, "typeName": { - "id": 269, + "id": 225, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3688:4:0", + "src": "2865:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22517,28 +21252,28 @@ "visibility": "internal" } ], - "src": "3659:43:0" + "src": "2836:43:0" }, - "src": "3638:65:0" + "src": "2815:65:0" }, { "anonymous": false, "documentation": null, - "id": 278, + "id": 234, "name": "ChangeContractName", "nodeType": "EventDefinition", "parameters": { - "id": 277, + "id": 233, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 274, + "id": 230, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3733:15:0", + "scope": 234, + "src": "2910:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22546,10 +21281,10 @@ "typeString": "string" }, "typeName": { - "id": 273, + "id": 229, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3733:6:0", + "src": "2910:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -22560,12 +21295,12 @@ }, { "constant": false, - "id": 276, + "id": 232, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3750:15:0", + "scope": 234, + "src": "2927:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22573,10 +21308,10 @@ "typeString": "string" }, "typeName": { - "id": 275, + "id": 231, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3750:6:0", + "src": "2927:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -22586,28 +21321,28 @@ "visibility": "internal" } ], - "src": "3732:34:0" + "src": "2909:34:0" }, - "src": "3708:59:0" + "src": "2885:59:0" }, { "anonymous": false, "documentation": null, - "id": 286, + "id": 242, "name": "ChangeMemberName", "nodeType": "EventDefinition", "parameters": { - "id": 285, + "id": 241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 280, + "id": 236, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3795:11:0", + "scope": 242, + "src": "2972:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22615,10 +21350,10 @@ "typeString": "address" }, "typeName": { - "id": 279, + "id": 235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3795:7:0", + "src": "2972:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22629,12 +21364,12 @@ }, { "constant": false, - "id": 282, + "id": 238, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3808:15:0", + "scope": 242, + "src": "2985:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22642,10 +21377,10 @@ "typeString": "string" }, "typeName": { - "id": 281, + "id": 237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3808:6:0", + "src": "2985:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -22656,12 +21391,12 @@ }, { "constant": false, - "id": 284, + "id": 240, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3825:15:0", + "scope": 242, + "src": "3002:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22669,10 +21404,10 @@ "typeString": "string" }, "typeName": { - "id": 283, + "id": 239, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3825:6:0", + "src": "3002:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -22682,28 +21417,28 @@ "visibility": "internal" } ], - "src": "3794:47:0" + "src": "2971:47:0" }, - "src": "3772:70:0" + "src": "2949:70:0" }, { "anonymous": false, "documentation": null, - "id": 294, + "id": 250, "name": "ChangeSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 293, + "id": 249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 244, "indexed": false, "name": "contractBalance", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3873:23:0", + "scope": 250, + "src": "3050:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22711,10 +21446,10 @@ "typeString": "uint256" }, "typeName": { - "id": 287, + "id": 243, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3873:7:0", + "src": "3050:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22725,12 +21460,12 @@ }, { "constant": false, - "id": 290, + "id": 246, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3898:16:0", + "scope": 250, + "src": "3075:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22738,10 +21473,10 @@ "typeString": "uint256" }, "typeName": { - "id": 289, + "id": 245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3898:7:0", + "src": "3075:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22752,12 +21487,12 @@ }, { "constant": false, - "id": 292, + "id": 248, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3916:16:0", + "scope": 250, + "src": "3093:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22765,10 +21500,10 @@ "typeString": "uint256" }, "typeName": { - "id": 291, + "id": 247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3916:7:0", + "src": "3093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22778,28 +21513,28 @@ "visibility": "internal" } ], - "src": "3872:61:0" + "src": "3049:61:0" }, - "src": "3847:87:0" + "src": "3024:87:0" }, { "anonymous": false, "documentation": null, - "id": 304, + "id": 260, "name": "WithdrawSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 303, + "id": 259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 296, + "id": 252, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3967:12:0", + "scope": 260, + "src": "3144:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22807,10 +21542,10 @@ "typeString": "address" }, "typeName": { - "id": 295, + "id": 251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3967:7:0", + "src": "3144:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22821,12 +21556,12 @@ }, { "constant": false, - "id": 298, + "id": 254, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3981:10:0", + "scope": 260, + "src": "3158:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22834,10 +21569,10 @@ "typeString": "address" }, "typeName": { - "id": 297, + "id": 253, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3981:7:0", + "src": "3158:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22848,12 +21583,12 @@ }, { "constant": false, - "id": 300, + "id": 256, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3993:10:0", + "scope": 260, + "src": "3170:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22861,10 +21596,10 @@ "typeString": "uint256" }, "typeName": { - "id": 299, + "id": 255, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3993:4:0", + "src": "3170:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22875,12 +21610,12 @@ }, { "constant": false, - "id": 302, + "id": 258, "indexed": false, "name": "newSharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "4005:33:0", + "scope": 260, + "src": "3182:33:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22888,10 +21623,10 @@ "typeString": "uint256" }, "typeName": { - "id": 301, + "id": 257, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4005:7:0", + "src": "3182:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22901,15 +21636,15 @@ "visibility": "internal" } ], - "src": "3966:73:0" + "src": "3143:73:0" }, - "src": "3939:101:0" + "src": "3116:101:0" }, { "body": { - "id": 314, + "id": 270, "nodeType": "Block", - "src": "4126:47:0", + "src": "3303:47:0", "statements": [ { "expression": { @@ -22919,18 +21654,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 308, + "id": 264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4144:3:0", + "referencedDeclaration": 1500, + "src": "3321:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 309, + "id": 265, "isConstant": false, "isLValue": false, "isPure": false, @@ -22938,7 +21673,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4144:10:0", + "src": "3321:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22948,18 +21683,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 310, + "id": 266, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4156:3:0", + "referencedDeclaration": 1500, + "src": "3333:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 311, + "id": 267, "isConstant": false, "isLValue": false, "isPure": false, @@ -22967,7 +21702,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4156:9:0", + "src": "3333:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22985,18 +21720,18 @@ "typeString": "uint256" } ], - "id": 307, + "id": 263, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 230, - "src": "4136:7:0", + "referencedDeclaration": 186, + "src": "3313:7:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 312, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -23004,20 +21739,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4136:30:0", + "src": "3313:30:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 313, + "id": 269, "nodeType": "ExpressionStatement", - "src": "4136:30:0" + "src": "3313:30:0" } ] }, "documentation": null, - "id": 315, + "id": 271, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -23025,29 +21760,29 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 305, + "id": 261, "nodeType": "ParameterList", "parameters": [], - "src": "4108:2:0" + "src": "3285:2:0" }, "payable": true, "returnParameters": { - "id": 306, + "id": 262, "nodeType": "ParameterList", "parameters": [], - "src": "4126:0:0" + "src": "3303:0:0" }, - "scope": 1194, - "src": "4099:74:0", + "scope": 1146, + "src": "3276:74:0", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 333, + "id": 289, "nodeType": "Block", - "src": "4200:95:0", + "src": "3377:95:0", "statements": [ { "condition": { @@ -23056,7 +21791,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 327, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, @@ -23067,7 +21802,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 320, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -23076,18 +21811,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 317, + "id": 273, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4215:3:0", + "referencedDeclaration": 1500, + "src": "3392:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 318, + "id": 274, "isConstant": false, "isLValue": false, "isPure": false, @@ -23095,7 +21830,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4215:10:0", + "src": "3392:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23105,18 +21840,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 319, + "id": 275, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "4229:5:0", + "referencedDeclaration": 5, + "src": "3406:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4215:19:0", + "src": "3392:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23126,7 +21861,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 326, + "id": 282, "isConstant": false, "isLValue": false, "isPure": false, @@ -23134,41 +21869,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4238:26:0", + "src": "3415:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 321, + "id": 277, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4239:7:0", + "referencedDeclaration": 73, + "src": "3416:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 324, + "id": 280, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 322, + "id": 278, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4247:3:0", + "referencedDeclaration": 1500, + "src": "3424:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 323, + "id": 279, "isConstant": false, "isLValue": false, "isPure": false, @@ -23176,7 +21911,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4247:10:0", + "src": "3424:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23187,21 +21922,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4239:19:0", + "src": "3416:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 325, + "id": 281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "4239:25:0", + "referencedDeclaration": 80, + "src": "3416:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23212,37 +21947,37 @@ "typeString": "bool" } }, - "src": "4215:49:0", + "src": "3392:49:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 331, + "id": 287, "nodeType": "IfStatement", - "src": "4211:63:0", + "src": "3388:63:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 328, + "id": 284, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4266:6:0", + "referencedDeclaration": 1505, + "src": "3443:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 329, + "id": 285, "isConstant": false, "isLValue": false, "isPure": false, @@ -23250,47 +21985,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4266:8:0", + "src": "3443:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 330, + "id": 286, "nodeType": "ExpressionStatement", - "src": "4266:8:0" + "src": "3443:8:0" } }, { - "id": 332, + "id": 288, "nodeType": "PlaceholderStatement", - "src": "4287:1:0" + "src": "3464:1:0" } ] }, "documentation": null, - "id": 334, + "id": 290, "name": "onlyAdmin", "nodeType": "ModifierDefinition", "parameters": { - "id": 316, + "id": 272, "nodeType": "ParameterList", "parameters": [], - "src": "4197:2:0" + "src": "3374:2:0" }, - "src": "4179:116:0", + "src": "3356:116:0", "visibility": "internal" }, { "body": { - "id": 348, + "id": 304, "nodeType": "Block", - "src": "4336:64:0", + "src": "3513:64:0", "statements": [ { "condition": { "argumentTypes": null, - "id": 342, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -23298,33 +22033,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4351:20:0", + "src": "3528:20:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 338, + "id": 294, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4352:7:0", + "referencedDeclaration": 73, + "src": "3529:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 340, + "id": 296, "indexExpression": { "argumentTypes": null, - "id": 339, + "id": 295, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "4360:3:0", + "referencedDeclaration": 292, + "src": "3537:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23335,21 +22070,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4352:12:0", + "src": "3529:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 341, + "id": 297, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "4352:19:0", + "referencedDeclaration": 78, + "src": "3529:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23361,30 +22096,30 @@ } }, "falseBody": null, - "id": 346, + "id": 302, "nodeType": "IfStatement", - "src": "4347:34:0", + "src": "3524:34:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 343, + "id": 299, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4373:6:0", + "referencedDeclaration": 1505, + "src": "3550:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 344, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -23392,39 +22127,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4373:8:0", + "src": "3550:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 345, + "id": 301, "nodeType": "ExpressionStatement", - "src": "4373:8:0" + "src": "3550:8:0" } }, { - "id": 347, + "id": 303, "nodeType": "PlaceholderStatement", - "src": "4392:1:0" + "src": "3569:1:0" } ] }, "documentation": null, - "id": 349, + "id": 305, "name": "onlyExisting", "nodeType": "ModifierDefinition", "parameters": { - "id": 337, + "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 336, + "id": 292, "name": "who", "nodeType": "VariableDeclaration", - "scope": 349, - "src": "4323:11:0", + "scope": 305, + "src": "3500:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23432,10 +22167,10 @@ "typeString": "address" }, "typeName": { - "id": 335, + "id": 291, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4323:7:0", + "src": "3500:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23445,34 +22180,34 @@ "visibility": "internal" } ], - "src": "4322:13:0" + "src": "3499:13:0" }, - "src": "4301:99:0", + "src": "3478:99:0", "visibility": "internal" }, { "body": { - "id": 357, + "id": 313, "nodeType": "Block", - "src": "4514:41:0", + "src": "3691:41:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 354, + "id": 310, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4531:10:0", + "referencedDeclaration": 76, + "src": "3708:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 355, + "id": 311, "isConstant": false, "isLValue": true, "isPure": false, @@ -23480,21 +22215,21 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4531:17:0", + "src": "3708:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 353, - "id": 356, + "functionReturnParameters": 309, + "id": 312, "nodeType": "Return", - "src": "4524:24:0" + "src": "3701:24:0" } ] }, "documentation": null, - "id": 358, + "id": 314, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23502,23 +22237,23 @@ "name": "getMemberCount", "nodeType": "FunctionDefinition", "parameters": { - "id": 350, + "id": 306, "nodeType": "ParameterList", "parameters": [], - "src": "4481:2:0" + "src": "3658:2:0" }, "payable": false, "returnParameters": { - "id": 353, + "id": 309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 352, + "id": 308, "name": "", "nodeType": "VariableDeclaration", - "scope": 358, - "src": "4508:4:0", + "scope": 314, + "src": "3685:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23526,10 +22261,10 @@ "typeString": "uint256" }, "typeName": { - "id": 351, + "id": 307, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4508:4:0", + "src": "3685:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23539,45 +22274,45 @@ "visibility": "internal" } ], - "src": "4507:6:0" + "src": "3684:6:0" }, - "scope": 1194, - "src": "4458:97:0", + "scope": 1146, + "src": "3635:97:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 369, + "id": 325, "nodeType": "Block", - "src": "4632:39:0", + "src": "3809:39:0", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 321, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4649:10:0", + "referencedDeclaration": 76, + "src": "3826:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 367, + "id": 323, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 322, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "4660:3:0", + "referencedDeclaration": 316, + "src": "3837:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23588,21 +22323,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4649:15:0", + "src": "3826:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 364, - "id": 368, + "functionReturnParameters": 320, + "id": 324, "nodeType": "Return", - "src": "4642:22:0" + "src": "3819:22:0" } ] }, "documentation": null, - "id": 370, + "id": 326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23610,16 +22345,16 @@ "name": "getMemberAtKey", "nodeType": "FunctionDefinition", "parameters": { - "id": 361, + "id": 317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 360, + "id": 316, "name": "key", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4589:8:0", + "scope": 326, + "src": "3766:8:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23627,10 +22362,10 @@ "typeString": "uint256" }, "typeName": { - "id": 359, + "id": 315, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4589:4:0", + "src": "3766:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23640,20 +22375,20 @@ "visibility": "internal" } ], - "src": "4588:10:0" + "src": "3765:10:0" }, "payable": false, "returnParameters": { - "id": 364, + "id": 320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 363, + "id": 319, "name": "", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4623:7:0", + "scope": 326, + "src": "3800:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23661,10 +22396,10 @@ "typeString": "address" }, "typeName": { - "id": 362, + "id": 318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4623:7:0", + "src": "3800:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23674,37 +22409,37 @@ "visibility": "internal" } ], - "src": "4622:9:0" + "src": "3799:9:0" }, - "scope": 1194, - "src": "4565:106:0", + "scope": 1146, + "src": "3742:106:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 378, + "id": 334, "nodeType": "Block", - "src": "4744:36:0", + "src": "3921:36:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 375, + "id": 331, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "4761:4:0", + "referencedDeclaration": 1513, + "src": "3938:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 376, + "id": 332, "isConstant": false, "isLValue": false, "isPure": false, @@ -23712,21 +22447,21 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4761:12:0", + "src": "3938:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 374, - "id": 377, + "functionReturnParameters": 330, + "id": 333, "nodeType": "Return", - "src": "4754:19:0" + "src": "3931:19:0" } ] }, "documentation": null, - "id": 379, + "id": 335, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23734,23 +22469,23 @@ "name": "getBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 371, + "id": 327, "nodeType": "ParameterList", "parameters": [], - "src": "4700:2:0" + "src": "3877:2:0" }, "payable": false, "returnParameters": { - "id": 374, + "id": 330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 373, + "id": 329, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 379, - "src": "4727:15:0", + "scope": 335, + "src": "3904:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23758,10 +22493,10 @@ "typeString": "uint256" }, "typeName": { - "id": 372, + "id": 328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4727:7:0", + "src": "3904:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23771,19 +22506,19 @@ "visibility": "internal" } ], - "src": "4726:17:0" + "src": "3903:17:0" }, - "scope": 1194, - "src": "4681:99:0", + "scope": 1146, + "src": "3858:99:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 401, + "id": 357, "nodeType": "Block", - "src": "4945:94:0", + "src": "4122:94:0", "statements": [ { "expression": { @@ -23794,12 +22529,12 @@ "arguments": [ { "argumentTypes": null, - "id": 393, + "id": 349, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4970:4:0", + "referencedDeclaration": 338, + "src": "4147:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -23813,20 +22548,20 @@ "typeString": "string memory" } ], - "id": 392, + "id": 348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4963:6:0", + "src": "4140:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": "string" }, - "id": 394, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -23834,7 +22569,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4963:12:0", + "src": "4140:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -23842,12 +22577,12 @@ }, { "argumentTypes": null, - "id": 395, + "id": 351, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4977:5:0", + "referencedDeclaration": 340, + "src": "4154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23855,12 +22590,12 @@ }, { "argumentTypes": null, - "id": 396, + "id": 352, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "4984:18:0", + "referencedDeclaration": 342, + "src": "4161:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23868,12 +22603,12 @@ }, { "argumentTypes": null, - "id": 397, + "id": 353, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "5004:11:0", + "referencedDeclaration": 344, + "src": "4181:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23881,40 +22616,40 @@ }, { "argumentTypes": null, - "id": 398, + "id": 354, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "5017:14:0", + "referencedDeclaration": 346, + "src": "4194:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 399, + "id": 355, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4962:70:0", + "src": "4139:70:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_string_memory_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(string memory,address,uint256,uint256,uint256)" } }, - "functionReturnParameters": 391, - "id": 400, + "functionReturnParameters": 347, + "id": 356, "nodeType": "Return", - "src": "4955:77:0" + "src": "4132:77:0" } ] }, "documentation": null, - "id": 402, + "id": 358, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23922,23 +22657,23 @@ "name": "getContractInfo", "nodeType": "FunctionDefinition", "parameters": { - "id": 380, + "id": 336, "nodeType": "ParameterList", "parameters": [], - "src": "4814:2:0" + "src": "3991:2:0" }, "payable": false, "returnParameters": { - "id": 391, + "id": 347, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 382, + "id": 338, "name": "name", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4841:11:0", + "scope": 358, + "src": "4018:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23946,10 +22681,10 @@ "typeString": "string" }, "typeName": { - "id": 381, + "id": 337, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4841:6:0", + "src": "4018:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23960,11 +22695,11 @@ }, { "constant": false, - "id": 384, + "id": 340, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4854:13:0", + "scope": 358, + "src": "4031:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23972,10 +22707,10 @@ "typeString": "address" }, "typeName": { - "id": 383, + "id": 339, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4854:7:0", + "src": "4031:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23986,11 +22721,11 @@ }, { "constant": false, - "id": 386, + "id": 342, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4870:26:0", + "scope": 358, + "src": "4047:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23998,10 +22733,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 341, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4870:7:0", + "src": "4047:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24012,11 +22747,11 @@ }, { "constant": false, - "id": 388, + "id": 344, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4899:19:0", + "scope": 358, + "src": "4076:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24024,10 +22759,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 343, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4899:7:0", + "src": "4076:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24038,11 +22773,11 @@ }, { "constant": false, - "id": 390, + "id": 346, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4921:22:0", + "scope": 358, + "src": "4098:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24050,10 +22785,10 @@ "typeString": "uint256" }, "typeName": { - "id": 389, + "id": 345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4921:7:0", + "src": "4098:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24063,47 +22798,47 @@ "visibility": "internal" } ], - "src": "4840:104:0" + "src": "4017:104:0" }, - "scope": 1194, - "src": "4790:249:0", + "scope": 1146, + "src": "3967:249:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 434, + "id": 390, "nodeType": "Block", - "src": "5202:111:0", + "src": "4379:111:0", "statements": [ { "assignments": [ - 419 + 375 ], "declarations": [ { "constant": false, - "id": 419, + "id": 375, "name": "m", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5210:15:0", + "scope": 391, + "src": "4387:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 418, + "id": 374, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5210:6:0", + "referencedDeclaration": 91, + "src": "4387:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -24111,31 +22846,31 @@ "visibility": "internal" } ], - "id": 423, + "id": 379, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 420, + "id": 376, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5228:7:0", + "referencedDeclaration": 73, + "src": "4405:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 422, + "id": 378, "indexExpression": { "argumentTypes": null, - "id": 421, + "id": 377, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5236:8:0", + "referencedDeclaration": 360, + "src": "4413:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24146,14 +22881,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5228:17:0", + "src": "4405:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5210:35:0" + "src": "4387:35:0" }, { "expression": { @@ -24163,26 +22898,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 424, + "id": 380, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5261:1:0", + "referencedDeclaration": 375, + "src": "4438:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 425, + "id": 381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5261:7:0", + "referencedDeclaration": 80, + "src": "4438:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24192,26 +22927,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 426, + "id": 382, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5270:1:0", + "referencedDeclaration": 375, + "src": "4447:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 427, + "id": 383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5270:8:0", + "referencedDeclaration": 82, + "src": "4447:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24221,26 +22956,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 428, + "id": 384, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5280:1:0", + "referencedDeclaration": 375, + "src": "4457:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 429, + "id": 385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5280:11:0", + "referencedDeclaration": 84, + "src": "4457:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24250,54 +22985,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 430, + "id": 386, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5293:1:0", + "referencedDeclaration": 375, + "src": "4470:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 431, + "id": 387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "5293:12:0", + "referencedDeclaration": 86, + "src": "4470:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } } ], - "id": 432, + "id": 388, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5260:46:0", + "src": "4437:46:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$_t_uint256_$_t_string_memory_$", "typeString": "tuple(bool,uint256,uint256,string memory)" } }, - "functionReturnParameters": 417, - "id": 433, + "functionReturnParameters": 373, + "id": 389, "nodeType": "Return", - "src": "5253:53:0" + "src": "4430:53:0" } ] }, "documentation": null, - "id": 435, + "id": 391, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -24306,49 +23041,49 @@ "arguments": [ { "argumentTypes": null, - "id": 407, + "id": 363, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5118:8:0", + "referencedDeclaration": 360, + "src": "4295:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 408, + "id": 364, "modifierName": { "argumentTypes": null, - "id": 406, + "id": 362, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5105:12:0", + "referencedDeclaration": 305, + "src": "4282:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "5105:22:0" + "src": "4282:22:0" } ], "name": "returnMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 405, + "id": 361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 404, + "id": 360, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5071:16:0", + "scope": 391, + "src": "4248:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24356,10 +23091,10 @@ "typeString": "address" }, "typeName": { - "id": 403, + "id": 359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5071:7:0", + "src": "4248:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24369,20 +23104,20 @@ "visibility": "internal" } ], - "src": "5070:18:0" + "src": "4247:18:0" }, "payable": false, "returnParameters": { - "id": 417, + "id": 373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 410, + "id": 366, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5136:10:0", + "scope": 391, + "src": "4313:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24390,10 +23125,10 @@ "typeString": "bool" }, "typeName": { - "id": 409, + "id": 365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5136:4:0", + "src": "4313:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24404,11 +23139,11 @@ }, { "constant": false, - "id": 412, + "id": 368, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5148:14:0", + "scope": 391, + "src": "4325:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24416,10 +23151,10 @@ "typeString": "uint256" }, "typeName": { - "id": 411, + "id": 367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5148:7:0", + "src": "4325:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24430,11 +23165,11 @@ }, { "constant": false, - "id": 414, + "id": 370, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5164:17:0", + "scope": 391, + "src": "4341:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24442,10 +23177,10 @@ "typeString": "uint256" }, "typeName": { - "id": 413, + "id": 369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5164:7:0", + "src": "4341:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24456,11 +23191,11 @@ }, { "constant": false, - "id": 416, + "id": 372, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5183:17:0", + "scope": 391, + "src": "4360:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24468,10 +23203,10 @@ "typeString": "string" }, "typeName": { - "id": 415, + "id": 371, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5183:6:0", + "src": "4360:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -24481,19 +23216,19 @@ "visibility": "internal" } ], - "src": "5135:66:0" + "src": "4312:66:0" }, - "scope": 1194, - "src": "5049:264:0", + "scope": 1146, + "src": "4226:264:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 451, + "id": 407, "nodeType": "Block", - "src": "5394:200:0", + "src": "4571:61:0", "statements": [ { "expression": { @@ -24504,14 +23239,14 @@ "arguments": [ { "argumentTypes": null, - "id": 447, + "id": 403, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "5442:4:0", + "referencedDeclaration": 1513, + "src": "4619:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } } @@ -24519,24 +23254,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } ], - "id": 446, + "id": 402, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5434:7:0", + "src": "4611:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 448, + "id": 404, "isConstant": false, "isLValue": false, "isPure": false, @@ -24544,7 +23279,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5434:13:0", + "src": "4611:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24563,12 +23298,12 @@ "arguments": [ { "argumentTypes": null, - "id": 443, + "id": 399, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "5417:5:0", + "referencedDeclaration": 393, + "src": "4594:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24582,18 +23317,18 @@ "typeString": "address" } ], - "id": 442, + "id": 398, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "5411:5:0", + "referencedDeclaration": 1213, + "src": "4588:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 444, + "id": 400, "isConstant": false, "isLValue": false, "isPure": false, @@ -24601,27 +23336,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:12:0", + "src": "4588:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 445, + "id": 401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1203, - "src": "5411:22:0", + "referencedDeclaration": 1155, + "src": "4588:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 449, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -24629,21 +23364,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:37:0", + "src": "4588:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 441, - "id": 450, + "functionReturnParameters": 397, + "id": 406, "nodeType": "Return", - "src": "5404:44:0" + "src": "4581:44:0" } ] }, "documentation": null, - "id": 452, + "id": 408, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -24651,16 +23386,16 @@ "name": "checkERC20Balance", "nodeType": "FunctionDefinition", "parameters": { - "id": 438, + "id": 394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 437, + "id": 393, "name": "token", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5346:13:0", + "scope": 408, + "src": "4523:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24668,10 +23403,10 @@ "typeString": "address" }, "typeName": { - "id": 436, + "id": 392, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5346:7:0", + "src": "4523:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24681,20 +23416,20 @@ "visibility": "internal" } ], - "src": "5345:15:0" + "src": "4522:15:0" }, "payable": false, "returnParameters": { - "id": 441, + "id": 397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 440, + "id": 396, "name": "", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5385:7:0", + "scope": 408, + "src": "4562:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24702,10 +23437,10 @@ "typeString": "uint256" }, "typeName": { - "id": 439, + "id": 395, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5385:7:0", + "src": "4562:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24715,19 +23450,19 @@ "visibility": "internal" } ], - "src": "5384:9:0" + "src": "4561:9:0" }, - "scope": 1194, - "src": "5319:275:0", + "scope": 1146, + "src": "4496:136:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 521, + "id": 477, "nodeType": "Block", - "src": "5746:399:0", + "src": "4784:399:0", "statements": [ { "condition": { @@ -24736,26 +23471,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 465, + "id": 421, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5817:7:0", + "referencedDeclaration": 73, + "src": "4855:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 467, + "id": 423, "indexExpression": { "argumentTypes": null, - "id": 466, + "id": 422, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "5825:3:0", + "referencedDeclaration": 410, + "src": "4863:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24766,51 +23501,51 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5817:12:0", + "src": "4855:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 468, + "id": 424, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5817:19:0", + "referencedDeclaration": 78, + "src": "4855:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 472, + "id": 428, "nodeType": "IfStatement", - "src": "5813:33:0", + "src": "4851:33:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 469, + "id": 425, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5838:6:0", + "referencedDeclaration": 1505, + "src": "4876:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 470, + "id": 426, "isConstant": false, "isLValue": false, "isPure": false, @@ -24818,15 +23553,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5838:8:0", + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 427, "nodeType": "ExpressionStatement", - "src": "5838:8:0" + "src": "4876:8:0" } }, { @@ -24836,7 +23571,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 478, + "id": 434, "isConstant": false, "isLValue": false, "isPure": false, @@ -24848,12 +23583,12 @@ "arguments": [ { "argumentTypes": null, - "id": 474, + "id": 430, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "5866:10:0", + "referencedDeclaration": 416, + "src": "4904:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -24867,20 +23602,20 @@ "typeString": "string memory" } ], - "id": 473, + "id": 429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5860:5:0", + "src": "4898:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 475, + "id": 431, "isConstant": false, "isLValue": false, "isPure": false, @@ -24888,13 +23623,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5860:17:0", + "src": "4898:17:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 476, + "id": 432, "isConstant": false, "isLValue": false, "isPure": false, @@ -24902,7 +23637,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5860:24:0", + "src": "4898:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24913,14 +23648,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 477, + "id": 433, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5887:2:0", + "src": "4925:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -24928,37 +23663,37 @@ }, "value": "21" }, - "src": "5860:29:0", + "src": "4898:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 482, + "id": 438, "nodeType": "IfStatement", - "src": "5856:43:0", + "src": "4894:43:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 479, + "id": 435, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5891:6:0", + "referencedDeclaration": 1505, + "src": "4929:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 480, + "id": 436, "isConstant": false, "isLValue": false, "isPure": false, @@ -24966,15 +23701,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5891:8:0", + "src": "4929:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 481, + "id": 437, "nodeType": "ExpressionStatement", - "src": "5891:8:0" + "src": "4929:8:0" } }, { @@ -24982,26 +23717,26 @@ "declarations": [ { "constant": false, - "id": 484, + "id": 440, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5910:23:0", + "scope": 478, + "src": "4948:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 483, + "id": 439, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5910:6:0", + "referencedDeclaration": 91, + "src": "4948:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -25009,15 +23744,15 @@ "visibility": "internal" } ], - "id": 485, + "id": 441, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "5910:23:0" + "src": "4948:23:0" }, { "expression": { "argumentTypes": null, - "id": 490, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -25026,26 +23761,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 486, + "id": 442, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5943:9:0", + "referencedDeclaration": 440, + "src": "4981:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 488, + "id": 444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5943:16:0", + "referencedDeclaration": 78, + "src": "4981:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25056,14 +23791,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 489, + "id": 445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5962:4:0", + "src": "5000:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -25071,20 +23806,20 @@ }, "value": "true" }, - "src": "5943:23:0", + "src": "4981:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 491, + "id": 447, "nodeType": "ExpressionStatement", - "src": "5943:23:0" + "src": "4981:23:0" }, { "expression": { "argumentTypes": null, - "id": 496, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -25093,26 +23828,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 492, + "id": 448, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5976:9:0", + "referencedDeclaration": 440, + "src": "5014:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 494, + "id": 450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5976:15:0", + "referencedDeclaration": 80, + "src": "5014:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25122,31 +23857,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 495, + "id": 451, "name": "admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "5994:5:0", + "referencedDeclaration": 414, + "src": "5032:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5976:23:0", + "src": "5014:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 497, + "id": 453, "nodeType": "ExpressionStatement", - "src": "5976:23:0" + "src": "5014:23:0" }, { "expression": { "argumentTypes": null, - "id": 502, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, @@ -25155,26 +23890,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 498, + "id": 454, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6009:9:0", + "referencedDeclaration": 440, + "src": "5047:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 500, + "id": 456, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6009:20:0", + "referencedDeclaration": 86, + "src": "5047:20:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -25184,31 +23919,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 501, + "id": 457, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6032:10:0", + "referencedDeclaration": 416, + "src": "5070:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6009:33:0", + "src": "5047:33:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, - "id": 503, + "id": 459, "nodeType": "ExpressionStatement", - "src": "6009:33:0" + "src": "5047:33:0" }, { "expression": { "argumentTypes": null, - "id": 508, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -25217,26 +23952,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 504, + "id": 460, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6053:7:0", + "referencedDeclaration": 73, + "src": "5091:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 506, + "id": 462, "indexExpression": { "argumentTypes": null, - "id": 505, + "id": 461, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6061:3:0", + "referencedDeclaration": 410, + "src": "5099:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25247,9 +23982,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6053:12:0", + "src": "5091:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -25257,26 +23992,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 507, + "id": 463, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6068:9:0", + "referencedDeclaration": 440, + "src": "5106:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "6053:24:0", + "src": "5091:24:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 509, + "id": 465, "nodeType": "ExpressionStatement", - "src": "6053:24:0" + "src": "5091:24:0" }, { "expression": { @@ -25284,12 +24019,12 @@ "arguments": [ { "argumentTypes": null, - "id": 513, + "id": 469, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6103:3:0", + "referencedDeclaration": 410, + "src": "5141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25305,18 +24040,18 @@ ], "expression": { "argumentTypes": null, - "id": 510, + "id": 466, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "6087:10:0", + "referencedDeclaration": 76, + "src": "5125:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 512, + "id": 468, "isConstant": false, "isLValue": false, "isPure": false, @@ -25324,13 +24059,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6087:15:0", + "src": "5125:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 514, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, @@ -25338,15 +24073,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:20:0", + "src": "5125:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 515, + "id": 471, "nodeType": "ExpressionStatement", - "src": "6087:20:0" + "src": "5125:20:0" }, { "expression": { @@ -25354,12 +24089,12 @@ "arguments": [ { "argumentTypes": null, - "id": 517, + "id": 473, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6126:3:0", + "referencedDeclaration": 410, + "src": "5164:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25367,12 +24102,12 @@ }, { "argumentTypes": null, - "id": 518, + "id": 474, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "6131:6:0", + "referencedDeclaration": 412, + "src": "5169:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25390,18 +24125,18 @@ "typeString": "uint256" } ], - "id": 516, + "id": 472, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "6117:8:0", + "referencedDeclaration": 770, + "src": "5155:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 519, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -25409,57 +24144,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:21:0", + "src": "5155:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6117:21:0" + "src": "5155:21:0" } ] }, "documentation": null, - "id": 522, + "id": 478, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 463, + "id": 419, "modifierName": { "argumentTypes": null, - "id": 462, + "id": 418, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "5734:9:0", + "referencedDeclaration": 290, + "src": "4772:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "5734:11:0" + "src": "4772:11:0" } ], "name": "addMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 454, + "id": 410, "name": "who", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5667:11:0", + "scope": 478, + "src": "4705:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25467,10 +24202,10 @@ "typeString": "address" }, "typeName": { - "id": 453, + "id": 409, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5667:7:0", + "src": "4705:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25481,11 +24216,11 @@ }, { "constant": false, - "id": 456, + "id": 412, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5680:14:0", + "scope": 478, + "src": "4718:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25493,10 +24228,10 @@ "typeString": "uint256" }, "typeName": { - "id": 455, + "id": 411, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5680:7:0", + "src": "4718:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25507,11 +24242,11 @@ }, { "constant": false, - "id": 458, + "id": 414, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5696:10:0", + "scope": 478, + "src": "4734:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25519,10 +24254,10 @@ "typeString": "bool" }, "typeName": { - "id": 457, + "id": 413, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5696:4:0", + "src": "4734:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25533,11 +24268,11 @@ }, { "constant": false, - "id": 460, + "id": 416, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5708:17:0", + "scope": 478, + "src": "4746:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25545,10 +24280,10 @@ "typeString": "string" }, "typeName": { - "id": 459, + "id": 415, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5708:6:0", + "src": "4746:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -25558,26 +24293,26 @@ "visibility": "internal" } ], - "src": "5666:60:0" + "src": "4704:60:0" }, "payable": false, "returnParameters": { - "id": 464, + "id": 420, "nodeType": "ParameterList", "parameters": [], - "src": "5746:0:0" + "src": "4784:0:0" }, - "scope": 1194, - "src": "5648:497:0", + "scope": 1146, + "src": "4686:497:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 575, + "id": 531, "nodeType": "Block", - "src": "6248:244:0", + "src": "5286:244:0", "statements": [ { "condition": { @@ -25586,7 +24321,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 544, + "id": 500, "isConstant": false, "isLValue": false, "isPure": false, @@ -25600,26 +24335,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 536, + "id": 492, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6267:7:0", + "referencedDeclaration": 73, + "src": "5305:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 538, + "id": 494, "indexExpression": { "argumentTypes": null, - "id": 537, + "id": 493, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6275:3:0", + "referencedDeclaration": 480, + "src": "5313:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25630,21 +24365,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6267:12:0", + "src": "5305:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 539, + "id": 495, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6267:23:0", + "referencedDeclaration": 86, + "src": "5305:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -25658,18 +24393,18 @@ "typeString": "string storage ref" } ], - "id": 535, + "id": 491, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6262:4:0", + "referencedDeclaration": 1510, + "src": "5300:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 540, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -25677,7 +24412,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6262:29:0", + "src": "5300:29:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -25690,12 +24425,12 @@ "arguments": [ { "argumentTypes": null, - "id": 542, + "id": 498, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6300:4:0", + "referencedDeclaration": 486, + "src": "5338:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -25709,18 +24444,18 @@ "typeString": "string memory" } ], - "id": 541, + "id": 497, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6295:4:0", + "referencedDeclaration": 1510, + "src": "5333:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 543, + "id": 499, "isConstant": false, "isLValue": false, "isPure": false, @@ -25728,34 +24463,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6295:10:0", + "src": "5333:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6262:43:0", + "src": "5300:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 550, + "id": 506, "nodeType": "IfStatement", - "src": "6258:76:0", + "src": "5296:76:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 502, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6324:3:0", + "referencedDeclaration": 480, + "src": "5362:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25763,12 +24498,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 503, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6329:4:0", + "referencedDeclaration": 486, + "src": "5367:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -25786,18 +24521,18 @@ "typeString": "string memory" } ], - "id": 545, + "id": 501, "name": "changeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6307:16:0", + "referencedDeclaration": 589, + "src": "5345:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory)" } }, - "id": 548, + "id": 504, "isConstant": false, "isLValue": false, "isPure": false, @@ -25805,15 +24540,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6307:27:0", + "src": "5345:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 549, + "id": 505, "nodeType": "ExpressionStatement", - "src": "6307:27:0" + "src": "5345:27:0" } }, { @@ -25823,7 +24558,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 556, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, @@ -25834,26 +24569,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 551, + "id": 507, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6348:7:0", + "referencedDeclaration": 73, + "src": "5386:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 553, + "id": 509, "indexExpression": { "argumentTypes": null, - "id": 552, + "id": 508, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6356:3:0", + "referencedDeclaration": 480, + "src": "5394:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25864,21 +24599,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6348:12:0", + "src": "5386:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 554, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6348:18:0", + "referencedDeclaration": 80, + "src": "5386:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25888,39 +24623,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 555, + "id": 511, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6370:7:0", + "referencedDeclaration": 484, + "src": "5408:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6348:29:0", + "src": "5386:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 562, + "id": 518, "nodeType": "IfStatement", - "src": "6344:69:0", + "src": "5382:69:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 558, + "id": 514, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6400:3:0", + "referencedDeclaration": 480, + "src": "5438:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25928,12 +24663,12 @@ }, { "argumentTypes": null, - "id": 559, + "id": 515, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6405:7:0", + "referencedDeclaration": 484, + "src": "5443:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25951,18 +24686,18 @@ "typeString": "bool" } ], - "id": 557, + "id": 513, "name": "changeAdminPrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "6379:20:0", + "referencedDeclaration": 615, + "src": "5417:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,bool)" } }, - "id": 560, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, @@ -25970,15 +24705,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6379:34:0", + "src": "5417:34:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 561, + "id": 517, "nodeType": "ExpressionStatement", - "src": "6379:34:0" + "src": "5417:34:0" } }, { @@ -25988,7 +24723,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 568, + "id": 524, "isConstant": false, "isLValue": false, "isPure": false, @@ -25999,26 +24734,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 563, + "id": 519, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6427:7:0", + "referencedDeclaration": 73, + "src": "5465:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 565, + "id": 521, "indexExpression": { "argumentTypes": null, - "id": 564, + "id": 520, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6435:3:0", + "referencedDeclaration": 480, + "src": "5473:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26029,21 +24764,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6427:12:0", + "src": "5465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 566, + "id": 522, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6427:19:0", + "referencedDeclaration": 82, + "src": "5465:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26053,39 +24788,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 567, + "id": 523, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6450:6:0", + "referencedDeclaration": 482, + "src": "5488:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6427:29:0", + "src": "5465:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 574, + "id": 530, "nodeType": "IfStatement", - "src": "6423:62:0", + "src": "5461:62:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 570, + "id": 526, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6473:3:0", + "referencedDeclaration": 480, + "src": "5511:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26093,12 +24828,12 @@ }, { "argumentTypes": null, - "id": 571, + "id": 527, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6478:6:0", + "referencedDeclaration": 482, + "src": "5516:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26116,18 +24851,18 @@ "typeString": "uint256" } ], - "id": 569, + "id": 525, "name": "allocateShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 772, - "src": "6458:14:0", + "referencedDeclaration": 728, + "src": "5496:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 572, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -26135,58 +24870,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6458:27:0", + "src": "5496:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 573, + "id": 529, "nodeType": "ExpressionStatement", - "src": "6458:27:0" + "src": "5496:27:0" } } ] }, "documentation": null, - "id": 576, + "id": 532, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 533, + "id": 489, "modifierName": { "argumentTypes": null, - "id": 532, + "id": 488, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6236:9:0", + "referencedDeclaration": 290, + "src": "5274:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6236:11:0" + "src": "5274:11:0" } ], "name": "updateMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 524, + "id": 480, "name": "who", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6173:11:0", + "scope": 532, + "src": "5211:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26194,10 +24929,10 @@ "typeString": "address" }, "typeName": { - "id": 523, + "id": 479, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6173:7:0", + "src": "5211:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26208,11 +24943,11 @@ }, { "constant": false, - "id": 526, + "id": 482, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6186:14:0", + "scope": 532, + "src": "5224:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26220,10 +24955,10 @@ "typeString": "uint256" }, "typeName": { - "id": 525, + "id": 481, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6186:7:0", + "src": "5224:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26234,11 +24969,11 @@ }, { "constant": false, - "id": 528, + "id": 484, "name": "isAdmin", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6202:12:0", + "scope": 532, + "src": "5240:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26246,10 +24981,10 @@ "typeString": "bool" }, "typeName": { - "id": 527, + "id": 483, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6202:4:0", + "src": "5240:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26260,11 +24995,11 @@ }, { "constant": false, - "id": 530, + "id": 486, "name": "name", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6216:11:0", + "scope": 532, + "src": "5254:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26272,10 +25007,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 485, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6216:6:0", + "src": "5254:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -26285,26 +25020,26 @@ "visibility": "internal" } ], - "src": "6172:56:0" + "src": "5210:56:0" }, "payable": false, "returnParameters": { - "id": 534, + "id": 490, "nodeType": "ParameterList", "parameters": [], - "src": "6248:0:0" + "src": "5286:0:0" }, - "scope": 1194, - "src": "6151:341:0", + "scope": 1146, + "src": "5189:341:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 632, + "id": 588, "nodeType": "Block", - "src": "6638:259:0", + "src": "5676:259:0", "statements": [ { "condition": { @@ -26313,7 +25048,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 601, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, @@ -26324,7 +25059,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 594, + "id": 550, "isConstant": false, "isLValue": false, "isPure": false, @@ -26335,7 +25070,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 589, + "id": 545, "isConstant": false, "isLValue": false, "isPure": false, @@ -26344,18 +25079,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 586, + "id": 542, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6652:3:0", + "referencedDeclaration": 1500, + "src": "5690:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 587, + "id": 543, "isConstant": false, "isLValue": false, "isPure": false, @@ -26363,7 +25098,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6652:10:0", + "src": "5690:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26373,18 +25108,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 588, + "id": 544, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6666:3:0", + "referencedDeclaration": 534, + "src": "5704:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6652:17:0", + "src": "5690:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26398,7 +25133,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 593, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -26407,18 +25142,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 590, + "id": 546, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6673:3:0", + "referencedDeclaration": 1500, + "src": "5711:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 591, + "id": 547, "isConstant": false, "isLValue": false, "isPure": false, @@ -26426,7 +25161,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6673:10:0", + "src": "5711:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26436,24 +25171,24 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 592, + "id": 548, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "6687:5:0", + "referencedDeclaration": 5, + "src": "5725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6673:19:0", + "src": "5711:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6652:40:0", + "src": "5690:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26463,7 +25198,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 600, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, @@ -26471,41 +25206,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6696:26:0", + "src": "5734:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 595, + "id": 551, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6697:7:0", + "referencedDeclaration": 73, + "src": "5735:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 598, + "id": 554, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 596, + "id": 552, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6705:3:0", + "referencedDeclaration": 1500, + "src": "5743:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 597, + "id": 553, "isConstant": false, "isLValue": false, "isPure": false, @@ -26513,7 +25248,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6705:10:0", + "src": "5743:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26524,21 +25259,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6697:19:0", + "src": "5735:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 599, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6697:25:0", + "referencedDeclaration": 80, + "src": "5735:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26549,37 +25284,37 @@ "typeString": "bool" } }, - "src": "6652:70:0", + "src": "5690:70:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 605, + "id": 561, "nodeType": "IfStatement", - "src": "6648:84:0", + "src": "5686:84:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 602, + "id": 558, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6724:6:0", + "referencedDeclaration": 1505, + "src": "5762:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 603, + "id": 559, "isConstant": false, "isLValue": false, "isPure": false, @@ -26587,15 +25322,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6724:8:0", + "src": "5762:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 604, + "id": 560, "nodeType": "ExpressionStatement", - "src": "6724:8:0" + "src": "5762:8:0" } }, { @@ -26605,7 +25340,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 611, + "id": 567, "isConstant": false, "isLValue": false, "isPure": false, @@ -26617,12 +25352,12 @@ "arguments": [ { "argumentTypes": null, - "id": 607, + "id": 563, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6752:7:0", + "referencedDeclaration": 536, + "src": "5790:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26636,20 +25371,20 @@ "typeString": "string memory" } ], - "id": 606, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6746:5:0", + "src": "5784:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 608, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, @@ -26657,13 +25392,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6746:14:0", + "src": "5784:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 609, + "id": 565, "isConstant": false, "isLValue": false, "isPure": false, @@ -26671,7 +25406,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6746:21:0", + "src": "5784:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26682,14 +25417,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 610, + "id": 566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6770:2:0", + "src": "5808:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -26697,37 +25432,37 @@ }, "value": "21" }, - "src": "6746:26:0", + "src": "5784:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 615, + "id": 571, "nodeType": "IfStatement", - "src": "6742:40:0", + "src": "5780:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 612, + "id": 568, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6774:6:0", + "referencedDeclaration": 1505, + "src": "5812:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 613, + "id": 569, "isConstant": false, "isLValue": false, "isPure": false, @@ -26735,15 +25470,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6774:8:0", + "src": "5812:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 614, + "id": 570, "nodeType": "ExpressionStatement", - "src": "6774:8:0" + "src": "5812:8:0" } }, { @@ -26752,12 +25487,12 @@ "arguments": [ { "argumentTypes": null, - "id": 617, + "id": 573, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6809:3:0", + "referencedDeclaration": 534, + "src": "5847:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26769,26 +25504,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 618, + "id": 574, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6814:7:0", + "referencedDeclaration": 73, + "src": "5852:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 620, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 619, + "id": 575, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6822:3:0", + "referencedDeclaration": 534, + "src": "5860:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26799,21 +25534,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6814:12:0", + "src": "5852:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 621, + "id": 577, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6814:23:0", + "referencedDeclaration": 86, + "src": "5852:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26821,12 +25556,12 @@ }, { "argumentTypes": null, - "id": 622, + "id": 578, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6839:7:0", + "referencedDeclaration": 536, + "src": "5877:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26848,18 +25583,18 @@ "typeString": "string memory" } ], - "id": 616, + "id": 572, "name": "ChangeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "6792:16:0", + "referencedDeclaration": 242, + "src": "5830:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 623, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, @@ -26867,20 +25602,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6792:55:0", + "src": "5830:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 624, + "id": 580, "nodeType": "ExpressionStatement", - "src": "6792:55:0" + "src": "5830:55:0" }, { "expression": { "argumentTypes": null, - "id": 630, + "id": 586, "isConstant": false, "isLValue": false, "isPure": false, @@ -26891,26 +25626,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 625, + "id": 581, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6857:7:0", + "referencedDeclaration": 73, + "src": "5895:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 627, + "id": 583, "indexExpression": { "argumentTypes": null, - "id": 626, + "id": 582, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6865:3:0", + "referencedDeclaration": 534, + "src": "5903:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26921,21 +25656,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6857:12:0", + "src": "5895:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 628, + "id": 584, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6857:23:0", + "referencedDeclaration": 86, + "src": "5895:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26945,31 +25680,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 629, + "id": 585, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6883:7:0", + "referencedDeclaration": 536, + "src": "5921:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6857:33:0", + "src": "5895:33:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 631, + "id": 587, "nodeType": "ExpressionStatement", - "src": "6857:33:0" + "src": "5895:33:0" } ] }, "documentation": null, - "id": 633, + "id": 589, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -26978,49 +25713,49 @@ "arguments": [ { "argumentTypes": null, - "id": 583, + "id": 539, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6633:3:0", + "referencedDeclaration": 534, + "src": "5671:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 584, + "id": 540, "modifierName": { "argumentTypes": null, - "id": 582, + "id": 538, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "6620:12:0", + "referencedDeclaration": 305, + "src": "5658:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6620:17:0" + "src": "5658:17:0" } ], "name": "changeMemberName", "nodeType": "FunctionDefinition", "parameters": { - "id": 581, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 578, + "id": 534, "name": "who", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6584:11:0", + "scope": 589, + "src": "5622:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27028,10 +25763,10 @@ "typeString": "address" }, "typeName": { - "id": 577, + "id": 533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6584:7:0", + "src": "5622:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27042,11 +25777,11 @@ }, { "constant": false, - "id": 580, + "id": 536, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6597:14:0", + "scope": 589, + "src": "5635:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27054,10 +25789,10 @@ "typeString": "string" }, "typeName": { - "id": 579, + "id": 535, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6597:6:0", + "src": "5635:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -27067,26 +25802,26 @@ "visibility": "internal" } ], - "src": "6583:29:0" + "src": "5621:29:0" }, "payable": false, "returnParameters": { - "id": 585, + "id": 541, "nodeType": "ParameterList", "parameters": [], - "src": "6638:0:0" + "src": "5676:0:0" }, - "scope": 1194, - "src": "6558:339:0", + "scope": 1146, + "src": "5596:339:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 658, + "id": 614, "nodeType": "Block", - "src": "6980:107:0", + "src": "6018:107:0", "statements": [ { "expression": { @@ -27094,12 +25829,12 @@ "arguments": [ { "argumentTypes": null, - "id": 643, + "id": 599, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7006:3:0", + "referencedDeclaration": 591, + "src": "6044:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27111,26 +25846,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 644, + "id": 600, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7011:7:0", + "referencedDeclaration": 73, + "src": "6049:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 646, + "id": 602, "indexExpression": { "argumentTypes": null, - "id": 645, + "id": 601, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7019:3:0", + "referencedDeclaration": 591, + "src": "6057:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27141,21 +25876,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7011:12:0", + "src": "6049:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 647, + "id": 603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7011:18:0", + "referencedDeclaration": 80, + "src": "6049:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27163,12 +25898,12 @@ }, { "argumentTypes": null, - "id": 648, + "id": 604, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7031:8:0", + "referencedDeclaration": 593, + "src": "6069:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27190,18 +25925,18 @@ "typeString": "bool" } ], - "id": 642, + "id": 598, "name": "ChangePrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 272, - "src": "6990:15:0", + "referencedDeclaration": 228, + "src": "6028:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,bool,bool)" } }, - "id": 649, + "id": 605, "isConstant": false, "isLValue": false, "isPure": false, @@ -27209,20 +25944,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6990:50:0", + "src": "6028:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 650, + "id": 606, "nodeType": "ExpressionStatement", - "src": "6990:50:0" + "src": "6028:50:0" }, { "expression": { "argumentTypes": null, - "id": 656, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, @@ -27233,26 +25968,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 651, + "id": 607, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7050:7:0", + "referencedDeclaration": 73, + "src": "6088:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 653, + "id": 609, "indexExpression": { "argumentTypes": null, - "id": 652, + "id": 608, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7058:3:0", + "referencedDeclaration": 591, + "src": "6096:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27263,21 +25998,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7050:12:0", + "src": "6088:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 654, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7050:18:0", + "referencedDeclaration": 80, + "src": "6088:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27287,68 +26022,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 655, + "id": 611, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7071:8:0", + "referencedDeclaration": 593, + "src": "6109:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7050:29:0", + "src": "6088:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 657, + "id": 613, "nodeType": "ExpressionStatement", - "src": "7050:29:0" + "src": "6088:29:0" } ] }, "documentation": null, - "id": 659, + "id": 615, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 640, + "id": 596, "modifierName": { "argumentTypes": null, - "id": 639, + "id": 595, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6968:9:0", + "referencedDeclaration": 290, + "src": "6006:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6968:11:0" + "src": "6006:11:0" } ], "name": "changeAdminPrivilege", "nodeType": "FunctionDefinition", "parameters": { - "id": 638, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 635, + "id": 591, "name": "who", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6933:11:0", + "scope": 615, + "src": "5971:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27356,10 +26091,10 @@ "typeString": "address" }, "typeName": { - "id": 634, + "id": 590, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6933:7:0", + "src": "5971:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27370,11 +26105,11 @@ }, { "constant": false, - "id": 637, + "id": 593, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6946:13:0", + "scope": 615, + "src": "5984:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27382,10 +26117,10 @@ "typeString": "bool" }, "typeName": { - "id": 636, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6946:4:0", + "src": "5984:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -27395,26 +26130,26 @@ "visibility": "internal" } ], - "src": "6932:28:0" + "src": "5970:28:0" }, "payable": false, "returnParameters": { - "id": 641, + "id": 597, "nodeType": "ParameterList", "parameters": [], - "src": "6980:0:0" + "src": "6018:0:0" }, - "scope": 1194, - "src": "6903:184:0", + "scope": 1146, + "src": "5941:184:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 685, + "id": 641, "nodeType": "Block", - "src": "7215:124:0", + "src": "6253:124:0", "statements": [ { "condition": { @@ -27423,7 +26158,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 671, + "id": 627, "isConstant": false, "isLValue": false, "isPure": false, @@ -27435,12 +26170,12 @@ "arguments": [ { "argumentTypes": null, - "id": 667, + "id": 623, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7235:7:0", + "referencedDeclaration": 617, + "src": "6273:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -27454,20 +26189,20 @@ "typeString": "string memory" } ], - "id": 666, + "id": 622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7229:5:0", + "src": "6267:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 668, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -27475,13 +26210,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7229:14:0", + "src": "6267:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 669, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -27489,7 +26224,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7229:21:0", + "src": "6267:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27500,14 +26235,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 670, + "id": 626, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7253:2:0", + "src": "6291:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -27515,37 +26250,37 @@ }, "value": "21" }, - "src": "7229:26:0", + "src": "6267:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 675, + "id": 631, "nodeType": "IfStatement", - "src": "7225:40:0", + "src": "6263:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 672, + "id": 628, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7257:6:0", + "referencedDeclaration": 1505, + "src": "6295:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 673, + "id": 629, "isConstant": false, "isLValue": false, "isPure": false, @@ -27553,15 +26288,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7257:8:0", + "src": "6295:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 674, + "id": 630, "nodeType": "ExpressionStatement", - "src": "7257:8:0" + "src": "6295:8:0" } }, { @@ -27570,12 +26305,12 @@ "arguments": [ { "argumentTypes": null, - "id": 677, + "id": 633, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7294:4:0", + "referencedDeclaration": 56, + "src": "6332:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -27583,12 +26318,12 @@ }, { "argumentTypes": null, - "id": 678, + "id": 634, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7300:7:0", + "referencedDeclaration": 617, + "src": "6338:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -27606,18 +26341,18 @@ "typeString": "string memory" } ], - "id": 676, + "id": 632, "name": "ChangeContractName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 278, - "src": "7275:18:0", + "referencedDeclaration": 234, + "src": "6313:18:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, - "id": 679, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, @@ -27625,32 +26360,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7275:33:0", + "src": "6313:33:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 680, + "id": 636, "nodeType": "ExpressionStatement", - "src": "7275:33:0" + "src": "6313:33:0" }, { "expression": { "argumentTypes": null, - "id": 683, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 681, + "id": 637, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7318:4:0", + "referencedDeclaration": 56, + "src": "6356:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -27660,68 +26395,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 682, + "id": 638, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7325:7:0", + "referencedDeclaration": 617, + "src": "6363:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "7318:14:0", + "src": "6356:14:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 684, + "id": 640, "nodeType": "ExpressionStatement", - "src": "7318:14:0" + "src": "6356:14:0" } ] }, "documentation": null, - "id": 686, + "id": 642, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 664, + "id": 620, "modifierName": { "argumentTypes": null, - "id": 663, + "id": 619, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "7203:9:0", + "referencedDeclaration": 290, + "src": "6241:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7203:11:0" + "src": "6241:11:0" } ], "name": "changeContractName", "nodeType": "FunctionDefinition", "parameters": { - "id": 662, + "id": 618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 661, + "id": 617, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 686, - "src": "7180:14:0", + "scope": 642, + "src": "6218:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27729,10 +26464,10 @@ "typeString": "string" }, "typeName": { - "id": 660, + "id": 616, "name": "string", "nodeType": "ElementaryTypeName", - "src": "7180:6:0", + "src": "6218:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -27742,26 +26477,26 @@ "visibility": "internal" } ], - "src": "7179:16:0" + "src": "6217:16:0" }, "payable": false, "returnParameters": { - "id": 665, + "id": 621, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:0" + "src": "6253:0:0" }, - "scope": 1194, - "src": "7152:187:0", + "scope": 1146, + "src": "6190:187:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 722, + "id": 678, "nodeType": "Block", - "src": "7653:262:0", + "src": "6691:262:0", "statements": [ { "condition": { @@ -27770,19 +26505,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 695, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 693, + "id": 649, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7667:13:0", + "referencedDeclaration": 644, + "src": "6705:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27792,48 +26527,48 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 694, + "id": 650, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7683:22:0", + "referencedDeclaration": 69, + "src": "6721:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7667:38:0", + "src": "6705:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 699, + "id": 655, "nodeType": "IfStatement", - "src": "7663:52:0", + "src": "6701:52:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 696, + "id": 652, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7707:6:0", + "referencedDeclaration": 1505, + "src": "6745:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 697, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -27841,15 +26576,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7707:8:0", + "src": "6745:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 698, + "id": 654, "nodeType": "ExpressionStatement", - "src": "7707:8:0" + "src": "6745:8:0" } }, { @@ -27859,7 +26594,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 706, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, @@ -27869,12 +26604,12 @@ "arguments": [ { "argumentTypes": null, - "id": 702, + "id": 658, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7747:22:0", + "referencedDeclaration": 69, + "src": "6785:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27890,32 +26625,32 @@ ], "expression": { "argumentTypes": null, - "id": 700, + "id": 656, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7729:13:0", + "referencedDeclaration": 644, + "src": "6767:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 701, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "7729:17:0", + "referencedDeclaration": 1281, + "src": "6767:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 703, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, @@ -27923,7 +26658,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7729:41:0", + "src": "6767:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27935,18 +26670,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 704, + "id": 660, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7773:4:0", + "referencedDeclaration": 1513, + "src": "6811:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 705, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -27954,43 +26689,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7773:12:0", + "src": "6811:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7729:56:0", + "src": "6767:56:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 710, + "id": 666, "nodeType": "IfStatement", - "src": "7725:70:0", + "src": "6763:70:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 707, + "id": 663, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7787:6:0", + "referencedDeclaration": 1505, + "src": "6825:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 708, + "id": 664, "isConstant": false, "isLValue": false, "isPure": false, @@ -27998,15 +26733,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7787:8:0", + "src": "6825:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 709, + "id": 665, "nodeType": "ExpressionStatement", - "src": "7787:8:0" + "src": "6825:8:0" } }, { @@ -28017,18 +26752,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 712, + "id": 668, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7826:4:0", + "referencedDeclaration": 1513, + "src": "6864:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 713, + "id": 669, "isConstant": false, "isLValue": false, "isPure": false, @@ -28036,7 +26771,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7826:12:0", + "src": "6864:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28044,12 +26779,12 @@ }, { "argumentTypes": null, - "id": 714, + "id": 670, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7840:13:0", + "referencedDeclaration": 67, + "src": "6878:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28057,12 +26792,12 @@ }, { "argumentTypes": null, - "id": 715, + "id": 671, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7855:13:0", + "referencedDeclaration": 644, + "src": "6893:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28084,18 +26819,18 @@ "typeString": "uint256" } ], - "id": 711, + "id": 667, "name": "ChangeSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 294, - "src": "7806:19:0", + "referencedDeclaration": 250, + "src": "6844:19:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 716, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -28103,32 +26838,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7806:63:0", + "src": "6844:63:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 717, + "id": 673, "nodeType": "ExpressionStatement", - "src": "7806:63:0" + "src": "6844:63:0" }, { "expression": { "argumentTypes": null, - "id": 720, + "id": 676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 718, + "id": 674, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7879:13:0", + "referencedDeclaration": 67, + "src": "6917:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28138,68 +26873,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 719, + "id": 675, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7895:13:0", + "referencedDeclaration": 644, + "src": "6933:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7879:29:0", + "src": "6917:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 721, + "id": 677, "nodeType": "ExpressionStatement", - "src": "7879:29:0" + "src": "6917:29:0" } ] }, "documentation": null, - "id": 723, + "id": 679, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 691, + "id": 647, "modifierName": { "argumentTypes": null, - "id": 690, + "id": 646, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "7641:9:0", + "referencedDeclaration": 30, + "src": "6679:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7641:11:0" + "src": "6679:11:0" } ], "name": "changeSharedExpenseAllocation", "nodeType": "FunctionDefinition", "parameters": { - "id": 689, + "id": 645, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 688, + "id": 644, "name": "newAllocation", "nodeType": "VariableDeclaration", - "scope": 723, - "src": "7611:21:0", + "scope": 679, + "src": "6649:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28207,10 +26942,10 @@ "typeString": "uint256" }, "typeName": { - "id": 687, + "id": 643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7611:7:0", + "src": "6649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28220,39 +26955,39 @@ "visibility": "internal" } ], - "src": "7610:23:0" + "src": "6648:23:0" }, "payable": false, "returnParameters": { - "id": 692, + "id": 648, "nodeType": "ParameterList", "parameters": [], - "src": "7653:0:0" + "src": "6691:0:0" }, - "scope": 1194, - "src": "7572:343:0", + "scope": 1146, + "src": "6610:343:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 771, + "id": 727, "nodeType": "Block", - "src": "8108:283:0", + "src": "7146:283:0", "statements": [ { "assignments": [ - 736 + 692 ], "declarations": [ { "constant": false, - "id": 736, + "id": 692, "name": "currentShares", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8118:21:0", + "scope": 728, + "src": "7156:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28260,10 +26995,10 @@ "typeString": "uint256" }, "typeName": { - "id": 735, + "id": 691, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8118:7:0", + "src": "7156:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28273,33 +27008,33 @@ "visibility": "internal" } ], - "id": 741, + "id": 697, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 737, + "id": 693, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8142:7:0", + "referencedDeclaration": 73, + "src": "7180:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 739, + "id": 695, "indexExpression": { "argumentTypes": null, - "id": 738, + "id": 694, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8150:3:0", + "referencedDeclaration": 681, + "src": "7188:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28310,28 +27045,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8142:12:0", + "src": "7180:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 740, + "id": 696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8142:19:0", + "referencedDeclaration": 82, + "src": "7180:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8118:43:0" + "src": "7156:43:0" }, { "condition": { @@ -28340,19 +27075,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 744, + "id": 700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 742, + "id": 698, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8175:6:0", + "referencedDeclaration": 683, + "src": "7213:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28362,48 +27097,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 743, + "id": 699, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8185:13:0", + "referencedDeclaration": 692, + "src": "7223:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8175:23:0", + "src": "7213:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 748, + "id": 704, "nodeType": "IfStatement", - "src": "8171:37:0", + "src": "7209:37:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 745, + "id": 701, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "8200:6:0", + "referencedDeclaration": 1505, + "src": "7238:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 746, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -28411,15 +27146,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8200:8:0", + "src": "7238:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 747, + "id": 703, "nodeType": "ExpressionStatement", - "src": "8200:8:0" + "src": "7238:8:0" } }, { @@ -28429,19 +27164,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 751, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 705, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8222:6:0", + "referencedDeclaration": 683, + "src": "7260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28451,27 +27186,27 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 750, + "id": 706, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8231:13:0", + "referencedDeclaration": 692, + "src": "7269:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8222:22:0", + "src": "7260:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 769, + "id": 725, "nodeType": "Block", - "src": "8317:68:0", + "src": "7355:68:0", "statements": [ { "expression": { @@ -28479,12 +27214,12 @@ "arguments": [ { "argumentTypes": null, - "id": 762, + "id": 718, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8343:3:0", + "referencedDeclaration": 681, + "src": "7381:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28495,12 +27230,12 @@ "arguments": [ { "argumentTypes": null, - "id": 765, + "id": 721, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8366:6:0", + "referencedDeclaration": 683, + "src": "7404:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28516,32 +27251,32 @@ ], "expression": { "argumentTypes": null, - "id": 763, + "id": 719, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8348:13:0", + "referencedDeclaration": 692, + "src": "7386:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 764, + "id": 720, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8348:17:0", + "referencedDeclaration": 1281, + "src": "7386:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 766, + "id": 722, "isConstant": false, "isLValue": false, "isPure": false, @@ -28549,7 +27284,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:25:0", + "src": "7386:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28567,18 +27302,18 @@ "typeString": "uint256" } ], - "id": 761, + "id": 717, "name": "removeShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 856, - "src": "8331:11:0", + "referencedDeclaration": 812, + "src": "7369:11:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 767, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -28586,25 +27321,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8331:43:0", + "src": "7369:43:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 724, "nodeType": "ExpressionStatement", - "src": "8331:43:0" + "src": "7369:43:0" } ] }, - "id": 770, + "id": 726, "nodeType": "IfStatement", - "src": "8218:167:0", + "src": "7256:167:0", "trueBody": { - "id": 760, + "id": 716, "nodeType": "Block", - "src": "8246:65:0", + "src": "7284:65:0", "statements": [ { "expression": { @@ -28612,12 +27347,12 @@ "arguments": [ { "argumentTypes": null, - "id": 753, + "id": 709, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8269:3:0", + "referencedDeclaration": 681, + "src": "7307:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28628,12 +27363,12 @@ "arguments": [ { "argumentTypes": null, - "id": 756, + "id": 712, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8285:13:0", + "referencedDeclaration": 692, + "src": "7323:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28649,32 +27384,32 @@ ], "expression": { "argumentTypes": null, - "id": 754, + "id": 710, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8274:6:0", + "referencedDeclaration": 683, + "src": "7312:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 755, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8274:10:0", + "referencedDeclaration": 1281, + "src": "7312:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 757, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -28682,7 +27417,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8274:25:0", + "src": "7312:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28700,18 +27435,18 @@ "typeString": "uint256" } ], - "id": 752, + "id": 708, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "8260:8:0", + "referencedDeclaration": 770, + "src": "7298:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 758, + "id": 714, "isConstant": false, "isLValue": false, "isPure": false, @@ -28719,15 +27454,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8260:40:0", + "src": "7298:40:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 759, + "id": 715, "nodeType": "ExpressionStatement", - "src": "8260:40:0" + "src": "7298:40:0" } ] } @@ -28735,77 +27470,77 @@ ] }, "documentation": null, - "id": 772, + "id": 728, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 730, + "id": 686, "modifierName": { "argumentTypes": null, - "id": 729, + "id": 685, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8078:9:0", + "referencedDeclaration": 290, + "src": "7116:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8078:11:0" + "src": "7116:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 732, + "id": 688, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8103:3:0", + "referencedDeclaration": 681, + "src": "7141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 733, + "id": 689, "modifierName": { "argumentTypes": null, - "id": 731, + "id": 687, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8090:12:0", + "referencedDeclaration": 305, + "src": "7128:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8090:17:0" + "src": "7128:17:0" } ], "name": "allocateShares", "nodeType": "FunctionDefinition", "parameters": { - "id": 728, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 725, + "id": 681, "name": "who", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8042:11:0", + "scope": 728, + "src": "7080:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28813,10 +27548,10 @@ "typeString": "address" }, "typeName": { - "id": 724, + "id": 680, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8042:7:0", + "src": "7080:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28827,11 +27562,11 @@ }, { "constant": false, - "id": 727, + "id": 683, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8055:14:0", + "scope": 728, + "src": "7093:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28839,10 +27574,10 @@ "typeString": "uint256" }, "typeName": { - "id": 726, + "id": 682, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8055:7:0", + "src": "7093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28852,43 +27587,43 @@ "visibility": "internal" } ], - "src": "8041:29:0" + "src": "7079:29:0" }, "payable": false, "returnParameters": { - "id": 734, + "id": 690, "nodeType": "ParameterList", "parameters": [], - "src": "8108:0:0" + "src": "7146:0:0" }, - "scope": 1194, - "src": "8018:373:0", + "scope": 1146, + "src": "7056:373:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 813, + "id": 769, "nodeType": "Block", - "src": "8532:169:0", + "src": "7570:169:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 789, + "id": 745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 784, + "id": 740, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8542:11:0", + "referencedDeclaration": 58, + "src": "7580:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28901,12 +27636,12 @@ "arguments": [ { "argumentTypes": null, - "id": 787, + "id": 743, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8572:6:0", + "referencedDeclaration": 732, + "src": "7610:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28922,32 +27657,32 @@ ], "expression": { "argumentTypes": null, - "id": 785, + "id": 741, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8556:11:0", + "referencedDeclaration": 58, + "src": "7594:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 786, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8556:15:0", + "referencedDeclaration": 1305, + "src": "7594:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 788, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, @@ -28955,26 +27690,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8556:23:0", + "src": "7594:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8542:37:0", + "src": "7580:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 790, + "id": 746, "nodeType": "ExpressionStatement", - "src": "8542:37:0" + "src": "7580:37:0" }, { "expression": { "argumentTypes": null, - "id": 802, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, @@ -28985,26 +27720,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 791, + "id": 747, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8589:7:0", + "referencedDeclaration": 73, + "src": "7627:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 793, + "id": 749, "indexExpression": { "argumentTypes": null, - "id": 792, + "id": 748, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8597:3:0", + "referencedDeclaration": 730, + "src": "7635:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29015,21 +27750,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8589:12:0", + "src": "7627:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 794, + "id": 750, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8589:19:0", + "referencedDeclaration": 82, + "src": "7627:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29042,12 +27777,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 756, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8635:6:0", + "referencedDeclaration": 732, + "src": "7673:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29067,26 +27802,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 795, + "id": 751, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8611:7:0", + "referencedDeclaration": 73, + "src": "7649:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 797, + "id": 753, "indexExpression": { "argumentTypes": null, - "id": 796, + "id": 752, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8619:3:0", + "referencedDeclaration": 730, + "src": "7657:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29097,41 +27832,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8611:12:0", + "src": "7649:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 798, + "id": 754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8611:19:0", + "referencedDeclaration": 82, + "src": "7649:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 799, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8611:23:0", + "referencedDeclaration": 1305, + "src": "7649:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 801, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -29139,21 +27874,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8611:31:0", + "src": "7649:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8589:53:0", + "src": "7627:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 803, + "id": 759, "nodeType": "ExpressionStatement", - "src": "8589:53:0" + "src": "7627:53:0" }, { "expression": { @@ -29161,12 +27896,12 @@ "arguments": [ { "argumentTypes": null, - "id": 805, + "id": 761, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8661:3:0", + "referencedDeclaration": 730, + "src": "7699:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29174,12 +27909,12 @@ }, { "argumentTypes": null, - "id": 806, + "id": 762, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8666:6:0", + "referencedDeclaration": 732, + "src": "7704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29191,26 +27926,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 807, + "id": 763, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8674:7:0", + "referencedDeclaration": 73, + "src": "7712:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 809, + "id": 765, "indexExpression": { "argumentTypes": null, - "id": 808, + "id": 764, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8682:3:0", + "referencedDeclaration": 730, + "src": "7720:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29221,21 +27956,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8674:12:0", + "src": "7712:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 810, + "id": 766, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8674:19:0", + "referencedDeclaration": 82, + "src": "7712:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29257,18 +27992,18 @@ "typeString": "uint256" } ], - "id": 804, + "id": 760, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "8652:8:0", + "referencedDeclaration": 212, + "src": "7690:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 811, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -29276,90 +28011,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8652:42:0", + "src": "7690:42:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 812, + "id": 768, "nodeType": "ExpressionStatement", - "src": "8652:42:0" + "src": "7690:42:0" } ] }, "documentation": null, - "id": 814, + "id": 770, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 779, + "id": 735, "modifierName": { "argumentTypes": null, - "id": 778, + "id": 734, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8502:9:0", + "referencedDeclaration": 290, + "src": "7540:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8502:11:0" + "src": "7540:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 781, + "id": 737, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8527:3:0", + "referencedDeclaration": 730, + "src": "7565:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 782, + "id": 738, "modifierName": { "argumentTypes": null, - "id": 780, + "id": 736, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8514:12:0", + "referencedDeclaration": 305, + "src": "7552:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8514:17:0" + "src": "7552:17:0" } ], "name": "addShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 777, + "id": 733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 730, "name": "who", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8466:11:0", + "scope": 770, + "src": "7504:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29367,10 +28102,10 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8466:7:0", + "src": "7504:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29381,11 +28116,11 @@ }, { "constant": false, - "id": 776, + "id": 732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8479:14:0", + "scope": 770, + "src": "7517:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29393,10 +28128,10 @@ "typeString": "uint256" }, "typeName": { - "id": 775, + "id": 731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8479:7:0", + "src": "7517:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29406,43 +28141,43 @@ "visibility": "internal" } ], - "src": "8465:29:0" + "src": "7503:29:0" }, "payable": false, "returnParameters": { - "id": 783, + "id": 739, "nodeType": "ParameterList", "parameters": [], - "src": "8532:0:0" + "src": "7570:0:0" }, - "scope": 1194, - "src": "8448:253:0", + "scope": 1146, + "src": "7486:253:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 855, + "id": 811, "nodeType": "Block", - "src": "8845:172:0", + "src": "7883:172:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 831, + "id": 787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 826, + "id": 782, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8855:11:0", + "referencedDeclaration": 58, + "src": "7893:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29455,12 +28190,12 @@ "arguments": [ { "argumentTypes": null, - "id": 829, + "id": 785, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8885:6:0", + "referencedDeclaration": 774, + "src": "7923:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29476,32 +28211,32 @@ ], "expression": { "argumentTypes": null, - "id": 827, + "id": 783, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8869:11:0", + "referencedDeclaration": 58, + "src": "7907:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 828, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8869:15:0", + "referencedDeclaration": 1281, + "src": "7907:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 830, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -29509,26 +28244,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8869:23:0", + "src": "7907:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8855:37:0", + "src": "7893:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 832, + "id": 788, "nodeType": "ExpressionStatement", - "src": "8855:37:0" + "src": "7893:37:0" }, { "expression": { "argumentTypes": null, - "id": 844, + "id": 800, "isConstant": false, "isLValue": false, "isPure": false, @@ -29539,26 +28274,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 833, + "id": 789, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8902:7:0", + "referencedDeclaration": 73, + "src": "7940:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 835, + "id": 791, "indexExpression": { "argumentTypes": null, - "id": 834, + "id": 790, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8910:3:0", + "referencedDeclaration": 772, + "src": "7948:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29569,21 +28304,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8902:12:0", + "src": "7940:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 836, + "id": 792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8902:19:0", + "referencedDeclaration": 82, + "src": "7940:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29596,12 +28331,12 @@ "arguments": [ { "argumentTypes": null, - "id": 842, + "id": 798, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8948:6:0", + "referencedDeclaration": 774, + "src": "7986:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29621,26 +28356,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 837, + "id": 793, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8924:7:0", + "referencedDeclaration": 73, + "src": "7962:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 839, + "id": 795, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 794, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8932:3:0", + "referencedDeclaration": 772, + "src": "7970:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29651,41 +28386,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8924:12:0", + "src": "7962:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 840, + "id": 796, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8924:19:0", + "referencedDeclaration": 82, + "src": "7962:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 841, + "id": 797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8924:23:0", + "referencedDeclaration": 1281, + "src": "7962:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 843, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -29693,21 +28428,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8924:31:0", + "src": "7962:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8902:53:0", + "src": "7940:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 845, + "id": 801, "nodeType": "ExpressionStatement", - "src": "8902:53:0" + "src": "7940:53:0" }, { "expression": { @@ -29715,12 +28450,12 @@ "arguments": [ { "argumentTypes": null, - "id": 847, + "id": 803, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8977:3:0", + "referencedDeclaration": 772, + "src": "8015:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29728,12 +28463,12 @@ }, { "argumentTypes": null, - "id": 848, + "id": 804, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8982:6:0", + "referencedDeclaration": 774, + "src": "8020:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29745,26 +28480,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 849, + "id": 805, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8990:7:0", + "referencedDeclaration": 73, + "src": "8028:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 851, + "id": 807, "indexExpression": { "argumentTypes": null, - "id": 850, + "id": 806, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8998:3:0", + "referencedDeclaration": 772, + "src": "8036:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29775,21 +28510,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:12:0", + "src": "8028:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 852, + "id": 808, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8990:19:0", + "referencedDeclaration": 82, + "src": "8028:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29811,18 +28546,18 @@ "typeString": "uint256" } ], - "id": 846, + "id": 802, "name": "RemoveShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 264, - "src": "8965:11:0", + "referencedDeclaration": 220, + "src": "8003:11:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 853, + "id": 809, "isConstant": false, "isLValue": false, "isPure": false, @@ -29830,90 +28565,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8965:45:0", + "src": "8003:45:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 854, + "id": 810, "nodeType": "ExpressionStatement", - "src": "8965:45:0" + "src": "8003:45:0" } ] }, "documentation": null, - "id": 856, + "id": 812, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 821, + "id": 777, "modifierName": { "argumentTypes": null, - "id": 820, + "id": 776, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8815:9:0", + "referencedDeclaration": 290, + "src": "7853:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8815:11:0" + "src": "7853:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 823, + "id": 779, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8840:3:0", + "referencedDeclaration": 772, + "src": "7878:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 824, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 822, + "id": 778, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8827:12:0", + "referencedDeclaration": 305, + "src": "7865:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8827:17:0" + "src": "7865:17:0" } ], "name": "removeShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 819, + "id": 775, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 816, + "id": 772, "name": "who", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8779:11:0", + "scope": 812, + "src": "7817:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29921,10 +28656,10 @@ "typeString": "address" }, "typeName": { - "id": 815, + "id": 771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8779:7:0", + "src": "7817:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29935,11 +28670,11 @@ }, { "constant": false, - "id": 818, + "id": 774, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8792:14:0", + "scope": 812, + "src": "7830:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29947,10 +28682,10 @@ "typeString": "uint256" }, "typeName": { - "id": 817, + "id": 773, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8792:7:0", + "src": "7830:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29960,39 +28695,39 @@ "visibility": "internal" } ], - "src": "8778:29:0" + "src": "7816:29:0" }, "payable": false, "returnParameters": { - "id": 825, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "8845:0:0" + "src": "7883:0:0" }, - "scope": 1194, - "src": "8758:259:0", + "scope": 1146, + "src": "7796:259:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 923, + "id": 879, "nodeType": "Block", - "src": "9430:392:0", + "src": "8468:392:0", "statements": [ { "assignments": [ - 866 + 822 ], "declarations": [ { "constant": false, - "id": 866, + "id": 822, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9440:16:0", + "scope": 880, + "src": "8478:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30000,10 +28735,10 @@ "typeString": "uint256" }, "typeName": { - "id": 865, + "id": 821, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9440:7:0", + "src": "8478:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30013,7 +28748,7 @@ "visibility": "internal" } ], - "id": 871, + "id": 827, "initialValue": { "argumentTypes": null, "arguments": [ @@ -30021,18 +28756,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 868, + "id": 824, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9492:3:0", + "referencedDeclaration": 1500, + "src": "8530:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 869, + "id": 825, "isConstant": false, "isLValue": false, "isPure": false, @@ -30040,7 +28775,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9492:10:0", + "src": "8530:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30054,18 +28789,18 @@ "typeString": "address" } ], - "id": 867, + "id": 823, "name": "calculateTotalWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1113, - "src": "9459:32:0", + "referencedDeclaration": 1066, + "src": "8497:32:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 870, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -30073,14 +28808,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9459:44:0", + "src": "8497:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9440:63:0" + "src": "8478:63:0" }, { "condition": { @@ -30089,19 +28824,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 881, + "id": 837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 872, + "id": 828, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9517:6:0", + "referencedDeclaration": 814, + "src": "8555:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30118,34 +28853,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 875, + "id": 831, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9539:7:0", + "referencedDeclaration": 73, + "src": "8577:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 878, + "id": 834, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 876, + "id": 832, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9547:3:0", + "referencedDeclaration": 1500, + "src": "8585:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 877, + "id": 833, "isConstant": false, "isLValue": false, "isPure": false, @@ -30153,7 +28888,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9547:10:0", + "src": "8585:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30164,21 +28899,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9539:19:0", + "src": "8577:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 879, + "id": 835, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9539:29:0", + "referencedDeclaration": 84, + "src": "8577:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30194,32 +28929,32 @@ ], "expression": { "argumentTypes": null, - "id": 873, + "id": 829, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "9526:8:0", + "referencedDeclaration": 822, + "src": "8564:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 874, + "id": 830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "9526:12:0", + "referencedDeclaration": 1281, + "src": "8564:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 880, + "id": 836, "isConstant": false, "isLValue": false, "isPure": false, @@ -30227,43 +28962,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9526:43:0", + "src": "8564:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9517:52:0", + "src": "8555:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 885, + "id": 841, "nodeType": "IfStatement", - "src": "9513:66:0", + "src": "8551:66:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 882, + "id": 838, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "9571:6:0", + "referencedDeclaration": 1505, + "src": "8609:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 883, + "id": 839, "isConstant": false, "isLValue": false, "isPure": false, @@ -30271,21 +29006,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9571:8:0", + "src": "8609:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 884, + "id": 840, "nodeType": "ExpressionStatement", - "src": "9571:8:0" + "src": "8609:8:0" } }, { "expression": { "argumentTypes": null, - "id": 899, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -30296,34 +29031,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 886, + "id": 842, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9598:7:0", + "referencedDeclaration": 73, + "src": "8636:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 889, + "id": 845, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 887, + "id": 843, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9606:3:0", + "referencedDeclaration": 1500, + "src": "8644:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 888, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -30331,7 +29066,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9606:10:0", + "src": "8644:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30342,21 +29077,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9598:19:0", + "src": "8636:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 890, + "id": 846, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9598:29:0", + "referencedDeclaration": 84, + "src": "8636:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30369,12 +29104,12 @@ "arguments": [ { "argumentTypes": null, - "id": 897, + "id": 853, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9664:6:0", + "referencedDeclaration": 814, + "src": "8702:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30394,34 +29129,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 891, + "id": 847, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9630:7:0", + "referencedDeclaration": 73, + "src": "8668:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 894, + "id": 850, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 892, + "id": 848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9638:3:0", + "referencedDeclaration": 1500, + "src": "8676:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 893, + "id": 849, "isConstant": false, "isLValue": false, "isPure": false, @@ -30429,7 +29164,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9638:10:0", + "src": "8676:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30440,41 +29175,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9630:19:0", + "src": "8668:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 895, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9630:29:0", + "referencedDeclaration": 84, + "src": "8668:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 896, + "id": 852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9630:33:0", + "referencedDeclaration": 1305, + "src": "8668:33:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 898, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, @@ -30482,38 +29217,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9630:41:0", + "src": "8668:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9598:73:0", + "src": "8636:73:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 900, + "id": 856, "nodeType": "ExpressionStatement", - "src": "9598:73:0" + "src": "8636:73:0" }, { "expression": { "argumentTypes": null, - "id": 906, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 901, + "id": 857, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9681:14:0", + "referencedDeclaration": 60, + "src": "8719:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30526,12 +29261,12 @@ "arguments": [ { "argumentTypes": null, - "id": 904, + "id": 860, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9717:6:0", + "referencedDeclaration": 814, + "src": "8755:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30547,32 +29282,32 @@ ], "expression": { "argumentTypes": null, - "id": 902, + "id": 858, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9698:14:0", + "referencedDeclaration": 60, + "src": "8736:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 903, + "id": 859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9698:18:0", + "referencedDeclaration": 1305, + "src": "8736:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 905, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -30580,21 +29315,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9698:26:0", + "src": "8736:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:43:0", + "src": "8719:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 907, + "id": 863, "nodeType": "ExpressionStatement", - "src": "9681:43:0" + "src": "8719:43:0" }, { "expression": { @@ -30602,12 +29337,12 @@ "arguments": [ { "argumentTypes": null, - "id": 913, + "id": 869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9754:6:0", + "referencedDeclaration": 814, + "src": "8792:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30625,18 +29360,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 908, + "id": 864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9734:3:0", + "referencedDeclaration": 1500, + "src": "8772:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 911, + "id": 867, "isConstant": false, "isLValue": false, "isPure": false, @@ -30644,13 +29379,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:10:0", + "src": "8772:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 912, + "id": 868, "isConstant": false, "isLValue": false, "isPure": false, @@ -30658,13 +29393,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:19:0", + "src": "8772:19:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 914, + "id": 870, "isConstant": false, "isLValue": false, "isPure": false, @@ -30672,15 +29407,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9734:27:0", + "src": "8772:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 915, + "id": 871, "nodeType": "ExpressionStatement", - "src": "9734:27:0" + "src": "8772:27:0" }, { "expression": { @@ -30690,18 +29425,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 873, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9780:3:0", + "referencedDeclaration": 1500, + "src": "8818:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 918, + "id": 874, "isConstant": false, "isLValue": false, "isPure": false, @@ -30709,7 +29444,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9780:10:0", + "src": "8818:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30717,12 +29452,12 @@ }, { "argumentTypes": null, - "id": 919, + "id": 875, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9792:6:0", + "referencedDeclaration": 814, + "src": "8830:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30730,12 +29465,12 @@ }, { "argumentTypes": null, - "id": 920, + "id": 876, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9800:14:0", + "referencedDeclaration": 60, + "src": "8838:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30757,18 +29492,18 @@ "typeString": "uint256" } ], - "id": 916, + "id": 872, "name": "Withdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "9771:8:0", + "referencedDeclaration": 194, + "src": "8809:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 921, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -30776,20 +29511,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9771:44:0", + "src": "8809:44:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 922, + "id": 878, "nodeType": "ExpressionStatement", - "src": "9771:44:0" + "src": "8809:44:0" } ] }, "documentation": null, - "id": 924, + "id": 880, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -30800,18 +29535,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 861, + "id": 817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9418:3:0", + "referencedDeclaration": 1500, + "src": "8456:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 862, + "id": 818, "isConstant": false, "isLValue": false, "isPure": false, @@ -30819,44 +29554,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9418:10:0", + "src": "8456:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 863, + "id": 819, "modifierName": { "argumentTypes": null, - "id": 860, + "id": 816, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9405:12:0", + "referencedDeclaration": 305, + "src": "8443:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9405:24:0" + "src": "8443:24:0" } ], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 859, + "id": 815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 858, + "id": 814, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9382:14:0", + "scope": 880, + "src": "8420:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30864,10 +29599,10 @@ "typeString": "uint256" }, "typeName": { - "id": 857, + "id": 813, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9382:7:0", + "src": "8420:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30877,39 +29612,39 @@ "visibility": "internal" } ], - "src": "9381:16:0" + "src": "8419:16:0" }, "payable": false, "returnParameters": { - "id": 864, + "id": 820, "nodeType": "ParameterList", "parameters": [], - "src": "9430:0:0" + "src": "8468:0:0" }, - "scope": 1194, - "src": "9364:458:0", + "scope": 1146, + "src": "8402:458:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1011, + "id": 964, "nodeType": "Block", - "src": "9958:503:0", + "src": "8997:458:0", "statements": [ { "assignments": [ - 936 + 892 ], "declarations": [ { "constant": false, - "id": 936, + "id": 892, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9968:16:0", + "scope": 965, + "src": "9007:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30917,10 +29652,10 @@ "typeString": "uint256" }, "typeName": { - "id": 935, + "id": 891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9968:7:0", + "src": "9007:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30930,7 +29665,7 @@ "visibility": "internal" } ], - "id": 942, + "id": 898, "initialValue": { "argumentTypes": null, "arguments": [ @@ -30938,18 +29673,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 938, + "id": 894, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10025:3:0", + "referencedDeclaration": 1500, + "src": "9064:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 939, + "id": 895, "isConstant": false, "isLValue": false, "isPure": false, @@ -30957,7 +29692,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10025:10:0", + "src": "9064:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30965,12 +29700,12 @@ }, { "argumentTypes": null, - "id": 940, + "id": 896, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10037:5:0", + "referencedDeclaration": 884, + "src": "9076:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30988,18 +29723,18 @@ "typeString": "address" } ], - "id": 937, + "id": 893, "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "9987:37:0", + "referencedDeclaration": 1116, + "src": "9026:37:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 941, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -31007,14 +29742,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9987:56:0", + "src": "9026:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9968:75:0" + "src": "9007:75:0" }, { "condition": { @@ -31023,19 +29758,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 954, + "id": 910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 943, + "id": 899, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10057:6:0", + "referencedDeclaration": 882, + "src": "9096:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31054,34 +29789,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 946, + "id": 902, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10079:7:0", + "referencedDeclaration": 73, + "src": "9118:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 949, + "id": 905, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 903, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10087:3:0", + "referencedDeclaration": 1500, + "src": "9126:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 948, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, @@ -31089,7 +29824,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10087:10:0", + "src": "9126:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31100,35 +29835,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:19:0", + "src": "9118:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 950, + "id": 906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10079:35:0", + "referencedDeclaration": 90, + "src": "9118:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 952, + "id": 908, "indexExpression": { "argumentTypes": null, - "id": 951, + "id": 907, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10115:5:0", + "referencedDeclaration": 884, + "src": "9154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31139,7 +29874,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:42:0", + "src": "9118:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31155,32 +29890,32 @@ ], "expression": { "argumentTypes": null, - "id": 944, + "id": 900, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "10066:8:0", + "referencedDeclaration": 892, + "src": "9105:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 945, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "10066:12:0", + "referencedDeclaration": 1281, + "src": "9105:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 953, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -31188,43 +29923,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10066:56:0", + "src": "9105:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10057:65:0", + "src": "9096:65:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 958, + "id": 914, "nodeType": "IfStatement", - "src": "10053:79:0", + "src": "9092:79:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 955, + "id": 911, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10124:6:0", + "referencedDeclaration": 1505, + "src": "9163:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 956, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -31232,21 +29967,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10124:8:0", + "src": "9163:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 957, + "id": 913, "nodeType": "ExpressionStatement", - "src": "10124:8:0" + "src": "9163:8:0" } }, { "expression": { "argumentTypes": null, - "id": 976, + "id": 932, "isConstant": false, "isLValue": false, "isPure": false, @@ -31259,34 +29994,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 959, + "id": 915, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10143:7:0", + "referencedDeclaration": 73, + "src": "9182:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 962, + "id": 918, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 960, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10151:3:0", + "referencedDeclaration": 1500, + "src": "9190:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 961, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -31294,7 +30029,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10151:10:0", + "src": "9190:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31305,35 +30040,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10143:19:0", + "src": "9182:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 963, + "id": 919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10143:35:0", + "referencedDeclaration": 90, + "src": "9182:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 965, + "id": 921, "indexExpression": { "argumentTypes": null, - "id": 964, + "id": 920, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10179:5:0", + "referencedDeclaration": 884, + "src": "9218:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31344,7 +30079,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10143:42:0", + "src": "9182:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31357,12 +30092,12 @@ "arguments": [ { "argumentTypes": null, - "id": 974, + "id": 930, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10235:6:0", + "referencedDeclaration": 882, + "src": "9274:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31384,34 +30119,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 966, + "id": 922, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10188:7:0", + "referencedDeclaration": 73, + "src": "9227:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 969, + "id": 925, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 923, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10196:3:0", + "referencedDeclaration": 1500, + "src": "9235:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 968, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -31419,7 +30154,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10196:10:0", + "src": "9235:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31430,35 +30165,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:19:0", + "src": "9227:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 970, + "id": 926, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10188:35:0", + "referencedDeclaration": 90, + "src": "9227:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 972, + "id": 928, "indexExpression": { "argumentTypes": null, - "id": 971, + "id": 927, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10224:5:0", + "referencedDeclaration": 884, + "src": "9263:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31469,27 +30204,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:42:0", + "src": "9227:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 973, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10188:46:0", + "referencedDeclaration": 1305, + "src": "9227:46:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 975, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -31497,81 +30232,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10188:54:0", + "src": "9227:54:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10143:99:0", + "src": "9182:99:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 977, + "id": 933, "nodeType": "ExpressionStatement", - "src": "10143:99:0" + "src": "9182:99:0" }, { "expression": { "argumentTypes": null, - "id": 989, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10252:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "id": 979, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10259:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10252:13:0", + "id": 934, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9291:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 936, + "indexExpression": { + "argumentTypes": null, + "id": 935, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9298:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 981, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10252:28:0", + "nodeType": "IndexAccess", + "src": "9291:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31584,12 +30303,12 @@ "arguments": [ { "argumentTypes": null, - "id": 987, + "id": 941, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10316:6:0", + "referencedDeclaration": 882, + "src": "9325:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31605,75 +30324,59 @@ ], "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 982, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10283:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 984, - "indexExpression": { - "argumentTypes": null, - "id": 983, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10283:13:0", + "id": 937, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9307:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 939, + "indexExpression": { + "argumentTypes": null, + "id": 938, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9314:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 985, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10283:28:0", + "nodeType": "IndexAccess", + "src": "9307:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 986, + "id": 940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10283:32:0", + "referencedDeclaration": 1305, + "src": "9307:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 988, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -31681,21 +30384,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10283:40:0", + "src": "9307:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10252:71:0", + "src": "9291:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 990, + "id": 944, "nodeType": "ExpressionStatement", - "src": "10252:71:0" + "src": "9291:41:0" }, { "expression": { @@ -31705,18 +30408,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 995, + "id": 949, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10355:3:0", + "referencedDeclaration": 1500, + "src": "9364:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 996, + "id": 950, "isConstant": false, "isLValue": false, "isPure": false, @@ -31724,7 +30427,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10355:10:0", + "src": "9364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31732,12 +30435,12 @@ }, { "argumentTypes": null, - "id": 997, + "id": 951, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10367:6:0", + "referencedDeclaration": 882, + "src": "9376:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31760,12 +30463,12 @@ "arguments": [ { "argumentTypes": null, - "id": 992, + "id": 946, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10339:5:0", + "referencedDeclaration": 884, + "src": "9348:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31779,18 +30482,18 @@ "typeString": "address" } ], - "id": 991, + "id": 945, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "10333:5:0", + "referencedDeclaration": 1213, + "src": "9342:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 993, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, @@ -31798,27 +30501,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:12:0", + "src": "9342:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 994, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 1212, - "src": "10333:21:0", + "referencedDeclaration": 1164, + "src": "9342:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 998, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -31826,15 +30529,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:41:0", + "src": "9342:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 999, + "id": 953, "nodeType": "ExpressionStatement", - "src": "10333:41:0" + "src": "9342:41:0" }, { "expression": { @@ -31844,18 +30547,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1001, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10398:3:0", + "referencedDeclaration": 1500, + "src": "9407:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1002, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -31863,7 +30566,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10398:10:0", + "src": "9407:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31871,12 +30574,12 @@ }, { "argumentTypes": null, - "id": 1003, + "id": 957, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10410:6:0", + "referencedDeclaration": 882, + "src": "9419:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31884,12 +30587,12 @@ }, { "argumentTypes": null, - "id": 1004, + "id": 958, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10418:5:0", + "referencedDeclaration": 884, + "src": "9427:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31897,55 +30600,39 @@ }, { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1005, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10425:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1007, - "indexExpression": { - "argumentTypes": null, - "id": 1006, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10425:13:0", + "id": 959, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9434:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "id": 960, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9441:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1008, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10425:28:0", + "nodeType": "IndexAccess", + "src": "9434:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31971,18 +30658,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 954, "name": "TokenWithdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "10384:13:0", + "referencedDeclaration": 204, + "src": "9393:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,address,uint256)" } }, - "id": 1009, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -31990,20 +30677,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10384:70:0", + "src": "9393:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1010, + "id": 963, "nodeType": "ExpressionStatement", - "src": "10384:70:0" + "src": "9393:55:0" } ] }, "documentation": null, - "id": 1012, + "id": 965, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -32014,18 +30701,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 931, + "id": 887, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9946:3:0", + "referencedDeclaration": 1500, + "src": "8985:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 932, + "id": 888, "isConstant": false, "isLValue": false, "isPure": false, @@ -32033,44 +30720,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9946:10:0", + "src": "8985:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 933, + "id": 889, "modifierName": { "argumentTypes": null, - "id": 930, + "id": 886, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9933:12:0", + "referencedDeclaration": 305, + "src": "8972:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9933:24:0" + "src": "8972:24:0" } ], "name": "withdrawToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 929, + "id": 885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 926, + "id": 882, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9895:14:0", + "scope": 965, + "src": "8934:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32078,10 +30765,10 @@ "typeString": "uint256" }, "typeName": { - "id": 925, + "id": 881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9895:7:0", + "src": "8934:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32092,11 +30779,11 @@ }, { "constant": false, - "id": 928, + "id": 884, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9911:13:0", + "scope": 965, + "src": "8950:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32104,10 +30791,10 @@ "typeString": "address" }, "typeName": { - "id": 927, + "id": 883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9911:7:0", + "src": "8950:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32117,26 +30804,26 @@ "visibility": "internal" } ], - "src": "9894:31:0" + "src": "8933:31:0" }, "payable": false, "returnParameters": { - "id": 934, + "id": 890, "nodeType": "ParameterList", "parameters": [], - "src": "9958:0:0" + "src": "8997:0:0" }, - "scope": 1194, - "src": "9872:589:0", + "scope": 1146, + "src": "8911:544:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1050, + "id": 1003, "nodeType": "Block", - "src": "10726:267:0", + "src": "9720:267:0", "statements": [ { "condition": { @@ -32145,19 +30832,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1024, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1021, + "id": 974, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10740:6:0", + "referencedDeclaration": 967, + "src": "9734:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32170,18 +30857,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1022, + "id": 975, "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "10749:39:0", + "referencedDeclaration": 1127, + "src": "9743:39:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1023, + "id": 976, "isConstant": false, "isLValue": false, "isPure": false, @@ -32189,43 +30876,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10749:41:0", + "src": "9743:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10740:50:0", + "src": "9734:50:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1028, + "id": 981, "nodeType": "IfStatement", - "src": "10736:64:0", + "src": "9730:64:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 1025, + "id": 978, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10792:6:0", + "referencedDeclaration": 1505, + "src": "9786:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1026, + "id": 979, "isConstant": false, "isLValue": false, "isPure": false, @@ -32233,33 +30920,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10792:8:0", + "src": "9786:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1027, + "id": 980, "nodeType": "ExpressionStatement", - "src": "10792:8:0" + "src": "9786:8:0" } }, { "expression": { "argumentTypes": null, - "id": 1034, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1029, + "id": 982, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10819:22:0", + "referencedDeclaration": 69, + "src": "9813:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32272,12 +30959,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1032, + "id": 985, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10871:6:0", + "referencedDeclaration": 967, + "src": "9865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32293,32 +30980,32 @@ ], "expression": { "argumentTypes": null, - "id": 1030, + "id": 983, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10844:22:0", + "referencedDeclaration": 69, + "src": "9838:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1031, + "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10844:26:0", + "referencedDeclaration": 1305, + "src": "9838:26:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1033, + "id": 986, "isConstant": false, "isLValue": false, "isPure": false, @@ -32326,21 +31013,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10844:34:0", + "src": "9838:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10819:59:0", + "src": "9813:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1035, + "id": 988, "nodeType": "ExpressionStatement", - "src": "10819:59:0" + "src": "9813:59:0" }, { "expression": { @@ -32348,12 +31035,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1039, + "id": 992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10900:6:0", + "referencedDeclaration": 967, + "src": "9894:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32369,18 +31056,18 @@ ], "expression": { "argumentTypes": null, - "id": 1036, + "id": 989, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10888:2:0", + "referencedDeclaration": 969, + "src": "9882:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1038, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -32388,13 +31075,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10888:11:0", + "src": "9882:11:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1040, + "id": 993, "isConstant": false, "isLValue": false, "isPure": false, @@ -32402,15 +31089,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10888:19:0", + "src": "9882:19:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 994, "nodeType": "ExpressionStatement", - "src": "10888:19:0" + "src": "9882:19:0" }, { "expression": { @@ -32420,18 +31107,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1043, + "id": 996, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10939:3:0", + "referencedDeclaration": 1500, + "src": "9933:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1044, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, @@ -32439,7 +31126,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10939:10:0", + "src": "9933:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32447,12 +31134,12 @@ }, { "argumentTypes": null, - "id": 1045, + "id": 998, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10951:2:0", + "referencedDeclaration": 969, + "src": "9945:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32460,12 +31147,12 @@ }, { "argumentTypes": null, - "id": 1046, + "id": 999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10955:6:0", + "referencedDeclaration": 967, + "src": "9949:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32473,12 +31160,12 @@ }, { "argumentTypes": null, - "id": 1047, + "id": 1000, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10963:22:0", + "referencedDeclaration": 69, + "src": "9957:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32504,18 +31191,18 @@ "typeString": "uint256" } ], - "id": 1042, + "id": 995, "name": "WithdrawSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 304, - "src": "10917:21:0", + "referencedDeclaration": 260, + "src": "9911:21:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 1048, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -32523,57 +31210,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10917:69:0", + "src": "9911:69:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "10917:69:0" + "src": "9911:69:0" } ] }, "documentation": null, - "id": 1051, + "id": 1004, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 1019, + "id": 972, "modifierName": { "argumentTypes": null, - "id": 1018, + "id": 971, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "10714:9:0", + "referencedDeclaration": 290, + "src": "9708:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "10714:11:0" + "src": "9708:11:0" } ], "name": "withdrawSharedExpense", "nodeType": "FunctionDefinition", "parameters": { - "id": 1017, + "id": 970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1014, + "id": 967, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10679:14:0", + "scope": 1004, + "src": "9673:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32581,10 +31268,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1013, + "id": 966, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10679:7:0", + "src": "9673:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32595,11 +31282,11 @@ }, { "constant": false, - "id": 1016, + "id": 969, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10695:10:0", + "scope": 1004, + "src": "9689:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32607,10 +31294,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10695:7:0", + "src": "9689:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32620,39 +31307,39 @@ "visibility": "internal" } ], - "src": "10678:28:0" + "src": "9672:28:0" }, "payable": false, "returnParameters": { - "id": 1020, + "id": 973, "nodeType": "ParameterList", "parameters": [], - "src": "10726:0:0" + "src": "9720:0:0" }, - "scope": 1194, - "src": "10648:345:0", + "scope": 1146, + "src": "9642:345:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1112, + "id": 1065, "nodeType": "Block", - "src": "11276:651:0", + "src": "10270:651:0", "statements": [ { "assignments": [ - 1062 + 1015 ], "declarations": [ { "constant": false, - "id": 1062, + "id": 1015, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11424:18:0", + "scope": 1066, + "src": "10418:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32660,10 +31347,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1061, + "id": 1014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11424:7:0", + "src": "10418:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32673,18 +31360,18 @@ "visibility": "internal" } ], - "id": 1068, + "id": 1021, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1066, + "id": 1019, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "11462:14:0", + "referencedDeclaration": 60, + "src": "10456:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32702,18 +31389,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1063, + "id": 1016, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "11445:4:0", + "referencedDeclaration": 1513, + "src": "10439:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 1064, + "id": 1017, "isConstant": false, "isLValue": false, "isPure": false, @@ -32721,27 +31408,27 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "11445:12:0", + "src": "10439:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1065, + "id": 1018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11445:16:0", + "referencedDeclaration": 1305, + "src": "10439:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1067, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": false, @@ -32749,31 +31436,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11445:32:0", + "src": "10439:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11424:53:0" + "src": "10418:53:0" }, { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1069, + "id": 1022, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11487:10:0", + "referencedDeclaration": 1015, + "src": "10481:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32786,12 +31473,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1072, + "id": 1025, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "11515:13:0", + "referencedDeclaration": 67, + "src": "10509:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32807,32 +31494,32 @@ ], "expression": { "argumentTypes": null, - "id": 1070, + "id": 1023, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11500:10:0", + "referencedDeclaration": 1015, + "src": "10494:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1071, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "11500:14:0", + "referencedDeclaration": 1281, + "src": "10494:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1073, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -32840,38 +31527,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11500:29:0", + "src": "10494:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11487:42:0", + "src": "10481:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1075, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "11487:42:0" + "src": "10481:42:0" }, { "expression": { "argumentTypes": null, - "id": 1081, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1076, + "id": 1029, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11539:10:0", + "referencedDeclaration": 1015, + "src": "10533:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32884,12 +31571,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1079, + "id": 1032, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "11567:22:0", + "referencedDeclaration": 69, + "src": "10561:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32905,32 +31592,32 @@ ], "expression": { "argumentTypes": null, - "id": 1077, + "id": 1030, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11552:10:0", + "referencedDeclaration": 1015, + "src": "10546:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11552:14:0", + "referencedDeclaration": 1305, + "src": "10546:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1080, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, @@ -32938,34 +31625,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11552:38:0", + "src": "10546:38:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11539:51:0", + "src": "10533:51:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1082, + "id": 1035, "nodeType": "ExpressionStatement", - "src": "11539:51:0" + "src": "10533:51:0" }, { "assignments": [ - 1084 + 1037 ], "declarations": [ { "constant": false, - "id": 1084, + "id": 1037, "name": "ethPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11710:22:0", + "scope": 1066, + "src": "10704:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32973,10 +31660,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1083, + "id": 1036, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11710:7:0", + "src": "10704:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32986,18 +31673,18 @@ "visibility": "internal" } ], - "id": 1090, + "id": 1043, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1087, + "id": 1040, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "11754:11:0", + "referencedDeclaration": 58, + "src": "10748:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33005,12 +31692,12 @@ }, { "argumentTypes": null, - "id": 1088, + "id": 1041, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11767:9:0", + "referencedDeclaration": 65, + "src": "10761:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33030,32 +31717,32 @@ ], "expression": { "argumentTypes": null, - "id": 1085, + "id": 1038, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11735:10:0", + "referencedDeclaration": 1015, + "src": "10729:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1086, + "id": 1039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "11735:18:0", + "referencedDeclaration": 1344, + "src": "10729:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1089, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -33063,27 +31750,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11735:42:0", + "src": "10729:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11710:67:0" + "src": "10704:67:0" }, { "assignments": [ - 1092 + 1045 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1045, "name": "ethPPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11788:14:0", + "scope": 1066, + "src": "10782:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33091,10 +31778,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1091, + "id": 1044, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11788:7:0", + "src": "10782:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33104,7 +31791,7 @@ "visibility": "internal" } ], - "id": 1100, + "id": 1053, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33114,26 +31801,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1095, + "id": 1048, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "11824:7:0", + "referencedDeclaration": 73, + "src": "10818:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1097, + "id": 1050, "indexExpression": { "argumentTypes": null, - "id": 1096, + "id": 1049, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11832:3:0", + "referencedDeclaration": 1006, + "src": "10826:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33144,21 +31831,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11824:12:0", + "src": "10818:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1098, + "id": 1051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11824:19:0", + "referencedDeclaration": 82, + "src": "10818:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33174,32 +31861,32 @@ ], "expression": { "argumentTypes": null, - "id": 1093, + "id": 1046, "name": "ethPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "11805:14:0", + "referencedDeclaration": 1037, + "src": "10799:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1094, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "11805:18:0", + "referencedDeclaration": 1243, + "src": "10799:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1099, + "id": 1052, "isConstant": false, "isLValue": false, "isPure": false, @@ -33207,27 +31894,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11805:39:0", + "src": "10799:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11788:56:0" + "src": "10782:56:0" }, { "assignments": [ - 1102 + 1055 ], "declarations": [ { "constant": false, - "id": 1102, + "id": 1055, "name": "ethVal", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11854:14:0", + "scope": 1066, + "src": "10848:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33235,10 +31922,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1101, + "id": 1054, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11854:7:0", + "src": "10848:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33248,7 +31935,7 @@ "visibility": "internal" } ], - "id": 1109, + "id": 1062, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33258,7 +31945,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1107, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": true, @@ -33266,14 +31953,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1105, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11882:2:0", + "src": "10876:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -33285,18 +31972,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1106, + "id": 1059, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11886:9:0", + "referencedDeclaration": 65, + "src": "10880:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11882:13:0", + "src": "10876:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33312,32 +31999,32 @@ ], "expression": { "argumentTypes": null, - "id": 1103, + "id": 1056, "name": "ethPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "11871:6:0", + "referencedDeclaration": 1045, + "src": "10865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1104, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "11871:10:0", + "referencedDeclaration": 1261, + "src": "10865:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1108, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -33345,38 +32032,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11871:25:0", + "src": "10865:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11854:42:0" + "src": "10848:42:0" }, { "expression": { "argumentTypes": null, - "id": 1110, + "id": 1063, "name": "ethVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "11914:6:0", + "referencedDeclaration": 1055, + "src": "10908:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1060, - "id": 1111, + "functionReturnParameters": 1013, + "id": 1064, "nodeType": "Return", - "src": "11907:13:0" + "src": "10901:13:0" } ] }, "documentation": null, - "id": 1113, + "id": 1066, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33385,49 +32072,49 @@ "arguments": [ { "argumentTypes": null, - "id": 1056, + "id": 1009, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11253:3:0", + "referencedDeclaration": 1006, + "src": "10247:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 1057, + "id": 1010, "modifierName": { "argumentTypes": null, - "id": 1055, + "id": 1008, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "11240:12:0", + "referencedDeclaration": 305, + "src": "10234:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "11240:17:0" + "src": "10234:17:0" } ], "name": "calculateTotalWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1054, + "id": 1007, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1053, + "id": 1006, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11211:11:0", + "scope": 1066, + "src": "10205:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33435,10 +32122,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 1005, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11211:7:0", + "src": "10205:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33448,20 +32135,20 @@ "visibility": "internal" } ], - "src": "11210:13:0" + "src": "10204:13:0" }, "payable": false, "returnParameters": { - "id": 1060, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1059, + "id": 1012, "name": "", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11267:7:0", + "scope": 1066, + "src": "10261:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33469,10 +32156,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1058, + "id": 1011, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11267:7:0", + "src": "10261:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33482,32 +32169,32 @@ "visibility": "internal" } ], - "src": "11266:9:0" + "src": "10260:9:0" }, - "scope": 1194, - "src": "11169:758:0", + "scope": 1146, + "src": "10163:758:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1163, + "id": 1115, "nodeType": "Block", - "src": "12042:418:0", + "src": "11036:403:0", "statements": [ { "assignments": [ - 1123 + 1076 ], "declarations": [ { "constant": false, - "id": 1123, + "id": 1076, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12052:18:0", + "scope": 1116, + "src": "11046:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33515,10 +32202,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1122, + "id": 1075, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12052:7:0", + "src": "11046:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33528,61 +32215,45 @@ "visibility": "internal" } ], - "id": 1133, + "id": 1085, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1128, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "12102:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1130, - "indexExpression": { - "argumentTypes": null, - "id": 1129, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12109:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12102:13:0", + "id": 1081, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "11096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 1083, + "indexExpression": { + "argumentTypes": null, + "id": 1082, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1070, + "src": "11103:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1131, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "12102:28:0", + "nodeType": "IndexAccess", + "src": "11096:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33601,12 +32272,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1125, + "id": 1078, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12091:5:0", + "referencedDeclaration": 1070, + "src": "11085:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33620,18 +32291,18 @@ "typeString": "address" } ], - "id": 1124, + "id": 1077, "name": "checkERC20Balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 452, - "src": "12073:17:0", + "referencedDeclaration": 408, + "src": "11067:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1126, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -33639,27 +32310,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:24:0", + "src": "11067:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1127, + "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "12073:28:0", + "referencedDeclaration": 1305, + "src": "11067:28:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1132, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, @@ -33667,27 +32338,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:58:0", + "src": "11067:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12052:79:0" + "src": "11046:64:0" }, { "assignments": [ - 1135 + 1087 ], "declarations": [ { "constant": false, - "id": 1135, + "id": 1087, "name": "tokPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12243:22:0", + "scope": 1116, + "src": "11222:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33695,10 +32366,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1134, + "id": 1086, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12243:7:0", + "src": "11222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33708,18 +32379,18 @@ "visibility": "internal" } ], - "id": 1141, + "id": 1093, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1138, + "id": 1090, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "12287:11:0", + "referencedDeclaration": 58, + "src": "11266:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33727,12 +32398,12 @@ }, { "argumentTypes": null, - "id": 1139, + "id": 1091, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12300:9:0", + "referencedDeclaration": 65, + "src": "11279:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33752,32 +32423,32 @@ ], "expression": { "argumentTypes": null, - "id": 1136, + "id": 1088, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1123, - "src": "12268:10:0", + "referencedDeclaration": 1076, + "src": "11247:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1137, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12268:18:0", + "referencedDeclaration": 1344, + "src": "11247:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1140, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": false, @@ -33785,27 +32456,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12268:42:0", + "src": "11247:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12243:67:0" + "src": "11222:67:0" }, { "assignments": [ - 1143 + 1095 ], "declarations": [ { "constant": false, - "id": 1143, + "id": 1095, "name": "tokPPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12321:14:0", + "scope": 1116, + "src": "11300:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33813,10 +32484,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1142, + "id": 1094, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12321:7:0", + "src": "11300:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33826,7 +32497,7 @@ "visibility": "internal" } ], - "id": 1151, + "id": 1103, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33836,26 +32507,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1146, + "id": 1098, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "12357:7:0", + "referencedDeclaration": 73, + "src": "11336:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1148, + "id": 1100, "indexExpression": { "argumentTypes": null, - "id": 1147, + "id": 1099, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1115, - "src": "12365:3:0", + "referencedDeclaration": 1068, + "src": "11344:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33866,21 +32537,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12357:12:0", + "src": "11336:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1149, + "id": 1101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "12357:19:0", + "referencedDeclaration": 82, + "src": "11336:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33896,32 +32567,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1096, "name": "tokPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1135, - "src": "12338:14:0", + "referencedDeclaration": 1087, + "src": "11317:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1145, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "12338:18:0", + "referencedDeclaration": 1243, + "src": "11317:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1150, + "id": 1102, "isConstant": false, "isLValue": false, "isPure": false, @@ -33929,27 +32600,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12338:39:0", + "src": "11317:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12321:56:0" + "src": "11300:56:0" }, { "assignments": [ - 1153 + 1105 ], "declarations": [ { "constant": false, - "id": 1153, + "id": 1105, "name": "tokVal", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12387:14:0", + "scope": 1116, + "src": "11366:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33957,10 +32628,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1152, + "id": 1104, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12387:7:0", + "src": "11366:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33970,7 +32641,7 @@ "visibility": "internal" } ], - "id": 1160, + "id": 1112, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33980,7 +32651,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1158, + "id": 1110, "isConstant": false, "isLValue": false, "isPure": true, @@ -33988,14 +32659,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1156, + "id": 1108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12415:2:0", + "src": "11394:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -34007,18 +32678,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1157, + "id": 1109, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12419:9:0", + "referencedDeclaration": 65, + "src": "11398:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12415:13:0", + "src": "11394:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34034,32 +32705,32 @@ ], "expression": { "argumentTypes": null, - "id": 1154, + "id": 1106, "name": "tokPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "12404:6:0", + "referencedDeclaration": 1095, + "src": "11383:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1155, + "id": 1107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "12404:10:0", + "referencedDeclaration": 1261, + "src": "11383:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1159, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -34067,38 +32738,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12404:25:0", + "src": "11383:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12387:42:0" + "src": "11366:42:0" }, { "expression": { "argumentTypes": null, - "id": 1161, + "id": 1113, "name": "tokVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1153, - "src": "12447:6:0", + "referencedDeclaration": 1105, + "src": "11426:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1121, - "id": 1162, + "functionReturnParameters": 1074, + "id": 1114, "nodeType": "Return", - "src": "12440:13:0" + "src": "11419:13:0" } ] }, "documentation": null, - "id": 1164, + "id": 1116, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -34106,16 +32777,16 @@ "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1118, + "id": 1071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1115, + "id": 1068, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11981:11:0", + "scope": 1116, + "src": "10975:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34123,10 +32794,10 @@ "typeString": "address" }, "typeName": { - "id": 1114, + "id": 1067, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11981:7:0", + "src": "10975:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34137,11 +32808,11 @@ }, { "constant": false, - "id": 1117, + "id": 1070, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11994:13:0", + "scope": 1116, + "src": "10988:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34149,10 +32820,10 @@ "typeString": "address" }, "typeName": { - "id": 1116, + "id": 1069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11994:7:0", + "src": "10988:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34162,20 +32833,20 @@ "visibility": "internal" } ], - "src": "11980:28:0" + "src": "10974:28:0" }, "payable": false, "returnParameters": { - "id": 1121, + "id": 1074, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1073, "name": "", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12033:7:0", + "scope": 1116, + "src": "11027:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34183,10 +32854,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1119, + "id": 1072, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12033:7:0", + "src": "11027:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34196,19 +32867,19 @@ "visibility": "internal" } ], - "src": "12032:9:0" + "src": "11026:9:0" }, - "scope": 1194, - "src": "11934:526:0", + "scope": 1146, + "src": "10928:511:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1174, + "id": 1126, "nodeType": "Block", - "src": "12550:65:0", + "src": "11529:65:0", "statements": [ { "expression": { @@ -34216,12 +32887,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1171, + "id": 1123, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "12585:22:0", + "referencedDeclaration": 69, + "src": "11564:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34237,32 +32908,32 @@ ], "expression": { "argumentTypes": null, - "id": 1169, + "id": 1121, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "12567:13:0", + "referencedDeclaration": 67, + "src": "11546:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1170, + "id": 1122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "12567:17:0", + "referencedDeclaration": 1281, + "src": "11546:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1172, + "id": 1124, "isConstant": false, "isLValue": false, "isPure": false, @@ -34270,21 +32941,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12567:41:0", + "src": "11546:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1168, - "id": 1173, + "functionReturnParameters": 1120, + "id": 1125, "nodeType": "Return", - "src": "12560:48:0" + "src": "11539:48:0" } ] }, "documentation": null, - "id": 1175, + "id": 1127, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -34292,23 +32963,23 @@ "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1165, + "id": 1117, "nodeType": "ParameterList", "parameters": [], - "src": "12514:2:0" + "src": "11493:2:0" }, "payable": false, "returnParameters": { - "id": 1168, + "id": 1120, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1167, + "id": 1119, "name": "", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "12541:7:0", + "scope": 1127, + "src": "11520:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34316,10 +32987,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1166, + "id": 1118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12541:7:0", + "src": "11520:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34329,19 +33000,19 @@ "visibility": "internal" } ], - "src": "12540:9:0" + "src": "11519:9:0" }, - "scope": 1194, - "src": "12466:149:0", + "scope": 1146, + "src": "11445:149:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1192, + "id": 1144, "nodeType": "Block", - "src": "12737:39:0", + "src": "11716:39:0", "statements": [ { "expression": { @@ -34349,12 +33020,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1179, - "src": "12764:1:0", + "referencedDeclaration": 1131, + "src": "11743:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34362,12 +33033,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1141, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1181, - "src": "12767:1:0", + "referencedDeclaration": 1133, + "src": "11746:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34387,32 +33058,32 @@ ], "expression": { "argumentTypes": null, - "id": 1186, + "id": 1138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "12754:1:0", + "referencedDeclaration": 1129, + "src": "11733:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1187, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12754:9:0", + "referencedDeclaration": 1344, + "src": "11733:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1190, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -34420,21 +33091,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12754:15:0", + "src": "11733:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1185, - "id": 1191, + "functionReturnParameters": 1137, + "id": 1143, "nodeType": "Return", - "src": "12747:22:0" + "src": "11726:22:0" } ] }, "documentation": null, - "id": 1193, + "id": 1145, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -34442,16 +33113,16 @@ "name": "delegatePercent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1182, + "id": 1134, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1177, + "id": 1129, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12670:9:0", + "scope": 1145, + "src": "11649:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34459,10 +33130,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1176, + "id": 1128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12670:7:0", + "src": "11649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34473,11 +33144,11 @@ }, { "constant": false, - "id": 1179, + "id": 1131, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12681:9:0", + "scope": 1145, + "src": "11660:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34485,10 +33156,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1178, + "id": 1130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12681:7:0", + "src": "11660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34499,11 +33170,11 @@ }, { "constant": false, - "id": 1181, + "id": 1133, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12692:9:0", + "scope": 1145, + "src": "11671:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34511,10 +33182,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1180, + "id": 1132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12692:7:0", + "src": "11671:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34524,20 +33195,20 @@ "visibility": "internal" } ], - "src": "12669:33:0" + "src": "11648:33:0" }, "payable": false, "returnParameters": { - "id": 1185, + "id": 1137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 1136, "name": "", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12728:7:0", + "scope": 1145, + "src": "11707:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34545,10 +33216,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1183, + "id": 1135, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12728:7:0", + "src": "11707:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34558,17 +33229,17 @@ "visibility": "internal" } ], - "src": "12727:9:0" + "src": "11706:9:0" }, - "scope": 1194, - "src": "12645:131:0", + "scope": 1146, + "src": "11624:131:0", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1394, - "src": "989:11789:0" + "scope": 1346, + "src": "444:11313:0" }, { "baseContracts": [], @@ -34576,20 +33247,20 @@ "contractKind": "contract", "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", "fullyImplemented": false, - "id": 1221, + "id": 1173, "linearizedBaseContracts": [ - 1221 + 1173 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1196, + "id": 1148, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 1221, - "src": "12932:26:0", + "scope": 1173, + "src": "11911:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -34597,10 +33268,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1195, + "id": 1147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12932:7:0", + "src": "11911:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34612,7 +33283,7 @@ { "body": null, "documentation": null, - "id": 1203, + "id": 1155, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -34620,16 +33291,16 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1199, + "id": 1151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1198, + "id": 1150, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "12981:11:0", + "scope": 1155, + "src": "11960:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34637,10 +33308,10 @@ "typeString": "address" }, "typeName": { - "id": 1197, + "id": 1149, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12981:7:0", + "src": "11960:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34650,20 +33321,20 @@ "visibility": "internal" } ], - "src": "12980:13:0" + "src": "11959:13:0" }, "payable": false, "returnParameters": { - "id": 1202, + "id": 1154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1201, + "id": 1153, "name": "", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "13019:7:0", + "scope": 1155, + "src": "11998:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34671,10 +33342,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1200, + "id": 1152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13019:7:0", + "src": "11998:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34684,10 +33355,10 @@ "visibility": "internal" } ], - "src": "13018:9:0" + "src": "11997:9:0" }, - "scope": 1221, - "src": "12962:66:0", + "scope": 1173, + "src": "11941:66:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -34695,7 +33366,7 @@ { "body": null, "documentation": null, - "id": 1212, + "id": 1164, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -34703,16 +33374,16 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1208, + "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1205, + "id": 1157, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13049:10:0", + "scope": 1164, + "src": "12028:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34720,10 +33391,10 @@ "typeString": "address" }, "typeName": { - "id": 1204, + "id": 1156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13049:7:0", + "src": "12028:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34734,11 +33405,11 @@ }, { "constant": false, - "id": 1207, + "id": 1159, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13061:13:0", + "scope": 1164, + "src": "12040:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34746,10 +33417,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1158, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13061:7:0", + "src": "12040:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34759,20 +33430,20 @@ "visibility": "internal" } ], - "src": "13048:27:0" + "src": "12027:27:0" }, "payable": false, "returnParameters": { - "id": 1211, + "id": 1163, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1210, + "id": 1162, "name": "", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13092:4:0", + "scope": 1164, + "src": "12071:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34780,10 +33451,10 @@ "typeString": "bool" }, "typeName": { - "id": 1209, + "id": 1161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13092:4:0", + "src": "12071:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34793,10 +33464,10 @@ "visibility": "internal" } ], - "src": "13091:6:0" + "src": "12070:6:0" }, - "scope": 1221, - "src": "13031:67:0", + "scope": 1173, + "src": "12010:67:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -34804,21 +33475,21 @@ { "anonymous": false, "documentation": null, - "id": 1220, + "id": 1172, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1219, + "id": 1171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1214, + "id": 1166, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13116:20:0", + "scope": 1172, + "src": "12095:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34826,10 +33497,10 @@ "typeString": "address" }, "typeName": { - "id": 1213, + "id": 1165, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13116:7:0", + "src": "12095:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34840,12 +33511,12 @@ }, { "constant": false, - "id": 1216, + "id": 1168, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13138:18:0", + "scope": 1172, + "src": "12117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34853,10 +33524,10 @@ "typeString": "address" }, "typeName": { - "id": 1215, + "id": 1167, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13138:7:0", + "src": "12117:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34867,12 +33538,12 @@ }, { "constant": false, - "id": 1218, + "id": 1170, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13158:13:0", + "scope": 1172, + "src": "12137:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34880,10 +33551,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1217, + "id": 1169, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13158:7:0", + "src": "12137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34893,13 +33564,13 @@ "visibility": "internal" } ], - "src": "13115:57:0" + "src": "12094:57:0" }, - "src": "13101:72:0" + "src": "12080:72:0" } ], - "scope": 1394, - "src": "12908:267:0" + "scope": 1346, + "src": "11887:267:0" }, { "baseContracts": [ @@ -34907,31 +33578,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1222, + "id": 1174, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1221, - "src": "13285:10:0", + "referencedDeclaration": 1173, + "src": "12264:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$1221", + "typeIdentifier": "t_contract$_ERC20Basic_$1173", "typeString": "contract ERC20Basic" } }, - "id": 1223, + "id": 1175, "nodeType": "InheritanceSpecifier", - "src": "13285:10:0" + "src": "12264:10:0" } ], "contractDependencies": [ - 1221 + 1173 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 1261, + "id": 1213, "linearizedBaseContracts": [ - 1261, - 1221 + 1213, + 1173 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -34939,7 +33610,7 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1184, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -34947,16 +33618,16 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1225, + "id": 1177, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13319:13:0", + "scope": 1184, + "src": "12298:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34964,10 +33635,10 @@ "typeString": "address" }, "typeName": { - "id": 1224, + "id": 1176, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13319:7:0", + "src": "12298:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34978,11 +33649,11 @@ }, { "constant": false, - "id": 1227, + "id": 1179, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13334:15:0", + "scope": 1184, + "src": "12313:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34990,10 +33661,10 @@ "typeString": "address" }, "typeName": { - "id": 1226, + "id": 1178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13334:7:0", + "src": "12313:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -35003,20 +33674,20 @@ "visibility": "internal" } ], - "src": "13318:32:0" + "src": "12297:32:0" }, "payable": false, "returnParameters": { - "id": 1231, + "id": 1183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1182, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13376:7:0", + "scope": 1184, + "src": "12355:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35024,10 +33695,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1181, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13376:7:0", + "src": "12355:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35037,10 +33708,10 @@ "visibility": "internal" } ], - "src": "13375:9:0" + "src": "12354:9:0" }, - "scope": 1261, - "src": "13300:85:0", + "scope": 1213, + "src": "12279:85:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -35048,7 +33719,7 @@ { "body": null, "documentation": null, - "id": 1243, + "id": 1195, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -35056,16 +33727,16 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1239, + "id": 1191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1186, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13410:12:0", + "scope": 1195, + "src": "12389:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35073,10 +33744,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13410:7:0", + "src": "12389:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -35087,11 +33758,11 @@ }, { "constant": false, - "id": 1236, + "id": 1188, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13424:10:0", + "scope": 1195, + "src": "12403:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35099,10 +33770,10 @@ "typeString": "address" }, "typeName": { - "id": 1235, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13424:7:0", + "src": "12403:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -35113,11 +33784,11 @@ }, { "constant": false, - "id": 1238, + "id": 1190, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13436:13:0", + "scope": 1195, + "src": "12415:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35125,10 +33796,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1237, + "id": 1189, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13436:7:0", + "src": "12415:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35138,20 +33809,20 @@ "visibility": "internal" } ], - "src": "13409:41:0" + "src": "12388:41:0" }, "payable": false, "returnParameters": { - "id": 1242, + "id": 1194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1193, "name": "", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13467:4:0", + "scope": 1195, + "src": "12446:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35159,10 +33830,10 @@ "typeString": "bool" }, "typeName": { - "id": 1240, + "id": 1192, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13467:4:0", + "src": "12446:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35172,10 +33843,10 @@ "visibility": "internal" } ], - "src": "13466:6:0" + "src": "12445:6:0" }, - "scope": 1261, - "src": "13388:85:0", + "scope": 1213, + "src": "12367:85:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -35183,7 +33854,7 @@ { "body": null, "documentation": null, - "id": 1252, + "id": 1204, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -35191,16 +33862,16 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1248, + "id": 1200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1245, + "id": 1197, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13493:15:0", + "scope": 1204, + "src": "12472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35208,10 +33879,10 @@ "typeString": "address" }, "typeName": { - "id": 1244, + "id": 1196, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13493:7:0", + "src": "12472:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -35222,11 +33893,11 @@ }, { "constant": false, - "id": 1247, + "id": 1199, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13510:13:0", + "scope": 1204, + "src": "12489:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35234,10 +33905,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1246, + "id": 1198, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13510:7:0", + "src": "12489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35247,20 +33918,20 @@ "visibility": "internal" } ], - "src": "13492:32:0" + "src": "12471:32:0" }, "payable": false, "returnParameters": { - "id": 1251, + "id": 1203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1202, "name": "", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13541:4:0", + "scope": 1204, + "src": "12520:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35268,10 +33939,10 @@ "typeString": "bool" }, "typeName": { - "id": 1249, + "id": 1201, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13541:4:0", + "src": "12520:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35281,10 +33952,10 @@ "visibility": "internal" } ], - "src": "13540:6:0" + "src": "12519:6:0" }, - "scope": 1261, - "src": "13476:71:0", + "scope": 1213, + "src": "12455:71:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -35292,21 +33963,21 @@ { "anonymous": false, "documentation": null, - "id": 1260, + "id": 1212, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1259, + "id": 1211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1254, + "id": 1206, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13565:21:0", + "scope": 1212, + "src": "12544:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35314,10 +33985,10 @@ "typeString": "address" }, "typeName": { - "id": 1253, + "id": 1205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13565:7:0", + "src": "12544:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -35328,12 +33999,12 @@ }, { "constant": false, - "id": 1256, + "id": 1208, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13588:23:0", + "scope": 1212, + "src": "12567:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35341,10 +34012,10 @@ "typeString": "address" }, "typeName": { - "id": 1255, + "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13588:7:0", + "src": "12567:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -35355,12 +34026,12 @@ }, { "constant": false, - "id": 1258, + "id": 1210, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13613:13:0", + "scope": 1212, + "src": "12592:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35368,10 +34039,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1257, + "id": 1209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13613:7:0", + "src": "12592:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35381,13 +34052,13 @@ "visibility": "internal" } ], - "src": "13564:63:0" + "src": "12543:63:0" }, - "src": "13550:78:0" + "src": "12529:78:0" } ], - "scope": 1394, - "src": "13267:363:0" + "scope": 1346, + "src": "12246:363:0" }, { "baseContracts": [], @@ -35395,31 +34066,31 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 1393, + "id": 1345, "linearizedBaseContracts": [ - 1393 + 1345 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1290, + "id": 1242, "nodeType": "Block", - "src": "13817:90:0", + "src": "12796:90:0", "statements": [ { "assignments": [ - 1271 + 1223 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1223, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13827:9:0", + "scope": 1243, + "src": "12806:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35427,10 +34098,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 1222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13827:7:0", + "src": "12806:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35440,26 +34111,26 @@ "visibility": "internal" } ], - "id": 1275, + "id": 1227, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1274, + "id": 1226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1272, + "id": 1224, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13839:1:0", + "referencedDeclaration": 1215, + "src": "12818:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35469,25 +34140,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1273, + "id": 1225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13843:1:0", + "referencedDeclaration": 1217, + "src": "12822:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13839:5:0", + "src": "12818:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13827:17:0" + "src": "12806:17:0" }, { "expression": { @@ -35499,7 +34170,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1285, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, @@ -35510,19 +34181,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1279, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1277, + "id": 1229, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13861:1:0", + "referencedDeclaration": 1215, + "src": "12840:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35533,14 +34204,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1278, + "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13866:1:0", + "src": "12845:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -35548,7 +34219,7 @@ }, "value": "0" }, - "src": "13861:6:0", + "src": "12840:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35562,7 +34233,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1284, + "id": 1236, "isConstant": false, "isLValue": false, "isPure": false, @@ -35573,19 +34244,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1282, + "id": 1234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1280, + "id": 1232, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13871:1:0", + "referencedDeclaration": 1223, + "src": "12850:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35595,18 +34266,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1281, + "id": 1233, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13875:1:0", + "referencedDeclaration": 1215, + "src": "12854:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:5:0", + "src": "12850:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35616,24 +34287,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1283, + "id": 1235, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13880:1:0", + "referencedDeclaration": 1217, + "src": "12859:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:10:0", + "src": "12850:10:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13861:20:0", + "src": "12840:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35647,18 +34318,18 @@ "typeString": "bool" } ], - "id": 1276, + "id": 1228, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "13854:6:0", + "referencedDeclaration": 1489, + "src": "12833:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, @@ -35666,39 +34337,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13854:28:0", + "src": "12833:28:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 1239, "nodeType": "ExpressionStatement", - "src": "13854:28:0" + "src": "12833:28:0" }, { "expression": { "argumentTypes": null, - "id": 1288, + "id": 1240, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13899:1:0", + "referencedDeclaration": 1223, + "src": "12878:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1269, - "id": 1289, + "functionReturnParameters": 1221, + "id": 1241, "nodeType": "Return", - "src": "13892:8:0" + "src": "12871:8:0" } ] }, "documentation": null, - "id": 1291, + "id": 1243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35706,16 +34377,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 1266, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1263, + "id": 1215, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13759:9:0", + "scope": 1243, + "src": "12738:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35723,10 +34394,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1214, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13759:7:0", + "src": "12738:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35737,11 +34408,11 @@ }, { "constant": false, - "id": 1265, + "id": 1217, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13770:9:0", + "scope": 1243, + "src": "12749:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35749,10 +34420,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1264, + "id": 1216, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13770:7:0", + "src": "12749:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35762,20 +34433,20 @@ "visibility": "internal" } ], - "src": "13758:22:0" + "src": "12737:22:0" }, "payable": false, "returnParameters": { - "id": 1269, + "id": 1221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1268, + "id": 1220, "name": "", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13808:7:0", + "scope": 1243, + "src": "12787:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35783,10 +34454,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1267, + "id": 1219, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13808:7:0", + "src": "12787:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35796,32 +34467,32 @@ "visibility": "internal" } ], - "src": "13807:9:0" + "src": "12786:9:0" }, - "scope": 1393, - "src": "13746:161:0", + "scope": 1345, + "src": "12725:161:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1308, + "id": 1260, "nodeType": "Block", - "src": "13984:216:0", + "src": "12963:216:0", "statements": [ { "assignments": [ - 1301 + 1253 ], "declarations": [ { "constant": false, - "id": 1301, + "id": 1253, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "14072:9:0", + "scope": 1261, + "src": "13051:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35829,10 +34500,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1300, + "id": 1252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14072:7:0", + "src": "13051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35842,26 +34513,26 @@ "visibility": "internal" } ], - "id": 1305, + "id": 1257, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1304, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1302, + "id": 1254, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1293, - "src": "14084:1:0", + "referencedDeclaration": 1245, + "src": "13063:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35871,49 +34542,49 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1303, + "id": 1255, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1295, - "src": "14088:1:0", + "referencedDeclaration": 1247, + "src": "13067:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14084:5:0", + "src": "13063:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14072:17:0" + "src": "13051:17:0" }, { "expression": { "argumentTypes": null, - "id": 1306, + "id": 1258, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "14192:1:0", + "referencedDeclaration": 1253, + "src": "13171:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1299, - "id": 1307, + "functionReturnParameters": 1251, + "id": 1259, "nodeType": "Return", - "src": "14185:8:0" + "src": "13164:8:0" } ] }, "documentation": null, - "id": 1309, + "id": 1261, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35921,16 +34592,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 1296, + "id": 1248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1293, + "id": 1245, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13926:9:0", + "scope": 1261, + "src": "12905:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35938,10 +34609,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1292, + "id": 1244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13926:7:0", + "src": "12905:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35952,11 +34623,11 @@ }, { "constant": false, - "id": 1295, + "id": 1247, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13937:9:0", + "scope": 1261, + "src": "12916:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35964,10 +34635,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1294, + "id": 1246, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13937:7:0", + "src": "12916:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35977,20 +34648,20 @@ "visibility": "internal" } ], - "src": "13925:22:0" + "src": "12904:22:0" }, "payable": false, "returnParameters": { - "id": 1299, + "id": 1251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1250, "name": "", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13975:7:0", + "scope": 1261, + "src": "12954:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35998,10 +34669,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1297, + "id": 1249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13975:7:0", + "src": "12954:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36011,19 +34682,19 @@ "visibility": "internal" } ], - "src": "13974:9:0" + "src": "12953:9:0" }, - "scope": 1393, - "src": "13913:287:0", + "scope": 1345, + "src": "12892:287:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1328, + "id": 1280, "nodeType": "Block", - "src": "14277:53:0", + "src": "13256:53:0", "statements": [ { "expression": { @@ -36035,19 +34706,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1321, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1319, + "id": 1271, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14294:1:0", + "referencedDeclaration": 1265, + "src": "13273:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36057,18 +34728,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 1320, + "id": 1272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14299:1:0", + "referencedDeclaration": 1263, + "src": "13278:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14294:6:0", + "src": "13273:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -36082,18 +34753,18 @@ "typeString": "bool" } ], - "id": 1318, + "id": 1270, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14287:6:0", + "referencedDeclaration": 1489, + "src": "13266:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1322, + "id": 1274, "isConstant": false, "isLValue": false, "isPure": false, @@ -36101,15 +34772,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14287:14:0", + "src": "13266:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1323, + "id": 1275, "nodeType": "ExpressionStatement", - "src": "14287:14:0" + "src": "13266:14:0" }, { "expression": { @@ -36118,19 +34789,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1326, + "id": 1278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1324, + "id": 1276, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14318:1:0", + "referencedDeclaration": 1263, + "src": "13297:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36140,32 +34811,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1325, + "id": 1277, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14322:1:0", + "referencedDeclaration": 1265, + "src": "13301:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14318:5:0", + "src": "13297:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1317, - "id": 1327, + "functionReturnParameters": 1269, + "id": 1279, "nodeType": "Return", - "src": "14311:12:0" + "src": "13290:12:0" } ] }, "documentation": null, - "id": 1329, + "id": 1281, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -36173,16 +34844,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 1314, + "id": 1266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1311, + "id": 1263, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14219:9:0", + "scope": 1281, + "src": "13198:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36190,10 +34861,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1310, + "id": 1262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14219:7:0", + "src": "13198:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36204,11 +34875,11 @@ }, { "constant": false, - "id": 1313, + "id": 1265, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14230:9:0", + "scope": 1281, + "src": "13209:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36216,10 +34887,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1312, + "id": 1264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14230:7:0", + "src": "13209:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36229,20 +34900,20 @@ "visibility": "internal" } ], - "src": "14218:22:0" + "src": "13197:22:0" }, "payable": false, "returnParameters": { - "id": 1317, + "id": 1269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 1268, "name": "", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14268:7:0", + "scope": 1281, + "src": "13247:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36250,10 +34921,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1315, + "id": 1267, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14268:7:0", + "src": "13247:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36263,32 +34934,32 @@ "visibility": "internal" } ], - "src": "14267:9:0" + "src": "13246:9:0" }, - "scope": 1393, - "src": "14206:124:0", + "scope": 1345, + "src": "13185:124:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1352, + "id": 1304, "nodeType": "Block", - "src": "14407:76:0", + "src": "13386:76:0", "statements": [ { "assignments": [ - 1339 + 1291 ], "declarations": [ { "constant": false, - "id": 1339, + "id": 1291, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14417:9:0", + "scope": 1305, + "src": "13396:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36296,10 +34967,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1338, + "id": 1290, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14417:7:0", + "src": "13396:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36309,26 +34980,26 @@ "visibility": "internal" } ], - "id": 1343, + "id": 1295, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1342, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1340, + "id": 1292, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14429:1:0", + "referencedDeclaration": 1283, + "src": "13408:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36338,25 +35009,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1341, + "id": 1293, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "14433:1:0", + "referencedDeclaration": 1285, + "src": "13412:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14429:5:0", + "src": "13408:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14417:17:0" + "src": "13396:17:0" }, { "expression": { @@ -36368,19 +35039,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1347, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1345, + "id": 1297, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14451:1:0", + "referencedDeclaration": 1291, + "src": "13430:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36390,18 +35061,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1346, + "id": 1298, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14456:1:0", + "referencedDeclaration": 1283, + "src": "13435:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14451:6:0", + "src": "13430:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -36415,18 +35086,18 @@ "typeString": "bool" } ], - "id": 1344, + "id": 1296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14444:6:0", + "referencedDeclaration": 1489, + "src": "13423:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1348, + "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, @@ -36434,39 +35105,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14444:14:0", + "src": "13423:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1349, + "id": 1301, "nodeType": "ExpressionStatement", - "src": "14444:14:0" + "src": "13423:14:0" }, { "expression": { "argumentTypes": null, - "id": 1350, + "id": 1302, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14475:1:0", + "referencedDeclaration": 1291, + "src": "13454:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1337, - "id": 1351, + "functionReturnParameters": 1289, + "id": 1303, "nodeType": "Return", - "src": "14468:8:0" + "src": "13447:8:0" } ] }, "documentation": null, - "id": 1353, + "id": 1305, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -36474,16 +35145,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 1334, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1331, + "id": 1283, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14349:9:0", + "scope": 1305, + "src": "13328:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36491,10 +35162,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1330, + "id": 1282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14349:7:0", + "src": "13328:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36505,11 +35176,11 @@ }, { "constant": false, - "id": 1333, + "id": 1285, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14360:9:0", + "scope": 1305, + "src": "13339:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36517,10 +35188,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14360:7:0", + "src": "13339:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36530,20 +35201,20 @@ "visibility": "internal" } ], - "src": "14348:22:0" + "src": "13327:22:0" }, "payable": false, "returnParameters": { - "id": 1337, + "id": 1289, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1336, + "id": 1288, "name": "", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14398:7:0", + "scope": 1305, + "src": "13377:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36551,10 +35222,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1335, + "id": 1287, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14398:7:0", + "src": "13377:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36564,32 +35235,32 @@ "visibility": "internal" } ], - "src": "14397:9:0" + "src": "13376:9:0" }, - "scope": 1393, - "src": "14336:147:0", + "scope": 1345, + "src": "13315:147:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1391, + "id": 1343, "nodeType": "Block", - "src": "14768:257:0", + "src": "13747:257:0", "statements": [ { "assignments": [ - 1365 + 1317 ], "declarations": [ { "constant": false, - "id": 1365, + "id": 1317, "name": "_numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14826:18:0", + "scope": 1344, + "src": "13805:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36597,10 +35268,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1364, + "id": 1316, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14826:7:0", + "src": "13805:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36610,18 +35281,18 @@ "visibility": "internal" } ], - "id": 1375, + "id": 1327, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1367, + "id": 1319, "name": "numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1355, - "src": "14851:9:0", + "referencedDeclaration": 1307, + "src": "13830:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36633,7 +35304,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1373, + "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, @@ -36641,14 +35312,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1368, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14862:2:0", + "src": "13841:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -36667,19 +35338,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1371, + "id": 1323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1369, + "id": 1321, "name": "precision", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "14869:9:0", + "referencedDeclaration": 1311, + "src": "13848:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36690,14 +35361,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1370, + "id": 1322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14879:1:0", + "src": "13858:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -36705,27 +35376,27 @@ }, "value": "1" }, - "src": "14869:11:0", + "src": "13848:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1372, + "id": 1324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14868:13:0", + "src": "13847:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14862:19:0", + "src": "13841:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36743,18 +35414,18 @@ "typeString": "uint256" } ], - "id": 1366, + "id": 1318, "name": "mul", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "14847:3:0", + "referencedDeclaration": 1243, + "src": "13826:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1374, + "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, @@ -36762,27 +35433,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14847:35:0", + "src": "13826:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14826:56:0" + "src": "13805:56:0" }, { "assignments": [ - 1377 + 1329 ], "declarations": [ { "constant": false, - "id": 1377, + "id": 1329, "name": "_quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14931:17:0", + "scope": 1344, + "src": "13910:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36790,10 +35461,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1376, + "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14931:7:0", + "src": "13910:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36803,14 +35474,14 @@ "visibility": "internal" } ], - "id": 1387, + "id": 1339, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1386, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, @@ -36824,7 +35495,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1383, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": false, @@ -36834,12 +35505,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1379, + "id": 1331, "name": "_numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "14956:10:0", + "referencedDeclaration": 1317, + "src": "13935:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36847,12 +35518,12 @@ }, { "argumentTypes": null, - "id": 1380, + "id": 1332, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1357, - "src": "14968:11:0", + "referencedDeclaration": 1309, + "src": "13947:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36870,18 +35541,18 @@ "typeString": "uint256" } ], - "id": 1378, + "id": 1330, "name": "div", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "14952:3:0", + "referencedDeclaration": 1261, + "src": "13931:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1381, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -36889,7 +35560,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14952:28:0", + "src": "13931:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36900,14 +35571,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "35", - "id": 1382, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14983:1:0", + "src": "13962:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_5_by_1", @@ -36915,21 +35586,21 @@ }, "value": "5" }, - "src": "14952:32:0", + "src": "13931:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1384, + "id": 1336, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14951:34:0", + "src": "13930:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36940,14 +35611,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1385, + "id": 1337, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14988:2:0", + "src": "13967:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -36955,14 +35626,14 @@ }, "value": "10" }, - "src": "14951:39:0", + "src": "13930:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14931:59:0" + "src": "13910:59:0" }, { "expression": { @@ -36970,40 +35641,40 @@ "components": [ { "argumentTypes": null, - "id": 1388, + "id": 1340, "name": "_quotient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "15008:9:0", + "referencedDeclaration": 1329, + "src": "13987:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1389, + "id": 1341, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "15007:11:0", + "src": "13986:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1363, - "id": 1390, + "functionReturnParameters": 1315, + "id": 1342, "nodeType": "Return", - "src": "15000:18:0" + "src": "13979:18:0" } ] }, "documentation": null, - "id": 1392, + "id": 1344, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -37011,16 +35682,16 @@ "name": "percent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1360, + "id": 1312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1355, + "id": 1307, "name": "numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14665:17:0", + "scope": 1344, + "src": "13644:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -37028,10 +35699,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1354, + "id": 1306, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14665:7:0", + "src": "13644:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -37042,11 +35713,11 @@ }, { "constant": false, - "id": 1357, + "id": 1309, "name": "denominator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14684:19:0", + "scope": 1344, + "src": "13663:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -37054,10 +35725,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1356, + "id": 1308, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14684:7:0", + "src": "13663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -37068,11 +35739,11 @@ }, { "constant": false, - "id": 1359, + "id": 1311, "name": "precision", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14705:17:0", + "scope": 1344, + "src": "13684:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -37080,10 +35751,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1358, + "id": 1310, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14705:7:0", + "src": "13684:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -37093,20 +35764,20 @@ "visibility": "internal" } ], - "src": "14664:59:0" + "src": "13643:59:0" }, "payable": false, "returnParameters": { - "id": 1363, + "id": 1315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1362, + "id": 1314, "name": "quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14750:16:0", + "scope": 1344, + "src": "13729:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -37114,10 +35785,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1361, + "id": 1313, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14750:7:0", + "src": "13729:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -37127,26 +35798,253 @@ "visibility": "internal" } ], - "src": "14749:18:0" + "src": "13728:18:0" }, - "scope": 1393, - "src": "14648:377:0", + "scope": 1345, + "src": "13627:377:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1394, - "src": "13723:1304:0" + "scope": 1346, + "src": "12702:1304:0" } ], - "src": "0:15029:0" + "src": "0:14008:0" }, "compiler": { "name": "solc", "version": "0.4.24+commit.e67f0147.Emscripten.clang" }, "networks": { + "1": { + "events": { + "0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "from", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + } + ], + "name": "Deposit", + "type": "event" + }, + "0xf279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b568": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "from", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + }, + { + "indexed": false, + "name": "newTotalWithdrawn", + "type": "uint256" + } + ], + "name": "Withdraw", + "type": "event" + }, + "0xffdaa1b8f229c4f9a0c79b712224a2ad8d3aa3c483c23a125f4b9c179870938d": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "from", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + }, + { + "indexed": false, + "name": "token", + "type": "address" + }, + { + "indexed": false, + "name": "amount", + "type": "uint256" + } + ], + "name": "TokenWithdraw", + "type": "event" + }, + "0x0d0d4d1bc5a254e66ec692f9d1a4452fed4b59a3a1ba48b1a991838e5c7c4b8a": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "who", + "type": "address" + }, + { + "indexed": false, + "name": "addedShares", + "type": "uint256" + }, + { + "indexed": false, + "name": "newTotalShares", + "type": "uint256" + } + ], + "name": "AddShare", + "type": "event" + }, + "0x67d4e98c6b70fdfbb7305797bbb30889a736b9773c74f9557683ffacbd22d5a8": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "who", + "type": "address" + }, + { + "indexed": false, + "name": "removedShares", + "type": "uint256" + }, + { + "indexed": false, + "name": "newTotalShares", + "type": "uint256" + } + ], + "name": "RemoveShare", + "type": "event" + }, + "0x00b763075216b1778fecb2719c6d2040ed88fdbe6092a9597de5df9d175c968a": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "who", + "type": "address" + }, + { + "indexed": false, + "name": "oldValue", + "type": "bool" + }, + { + "indexed": false, + "name": "newValue", + "type": "bool" + } + ], + "name": "ChangePrivilege", + "type": "event" + }, + "0x7244709f741ec5f1d637fd5a891de308c779d1023c0f3128595bb88bf571ef88": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "oldValue", + "type": "string" + }, + { + "indexed": false, + "name": "newValue", + "type": "string" + } + ], + "name": "ChangeContractName", + "type": "event" + }, + "0x154ad3f744d3641de12f5e012773b0126c47d1ffda727e5a61a2e6db8bb2cb55": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "who", + "type": "address" + }, + { + "indexed": false, + "name": "oldValue", + "type": "string" + }, + { + "indexed": false, + "name": "newValue", + "type": "string" + } + ], + "name": "ChangeMemberName", + "type": "event" + }, + "0x5b3ea9617f529540e1c3e0beb0e01c060418c2d1fe48d369afe3d47beaa037cf": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "contractBalance", + "type": "uint256" + }, + { + "indexed": false, + "name": "oldValue", + "type": "uint256" + }, + { + "indexed": false, + "name": "newValue", + "type": "uint256" + } + ], + "name": "ChangeSharedExpense", + "type": "event" + }, + "0x223162e752821eb7bd44782f73723defb6e3a087a9afc4d3d4af13783f7b6aca": { + "anonymous": false, + "inputs": [ + { + "indexed": false, + "name": "from", + "type": "address" + }, + { + "indexed": false, + "name": "to", + "type": "address" + }, + { + "indexed": false, + "name": "value", + "type": "uint256" + }, + { + "indexed": false, + "name": "newSharedExpenseWithdrawn", + "type": "uint256" + } + ], + "name": "WithdrawSharedExpense", + "type": "event" + } + }, + "links": {}, + "address": "0x4b1a0f812CC8D22974Ee62f3184F5783E73aDf5c", + "transactionHash": "0x794b46e7e23dc1c15ef5a7cd741244f77a016692031fab68fd13c7c532a6bfd2" + }, "4": { "events": { "0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c": { @@ -37371,15 +36269,16 @@ } }, "links": {}, - "address": "0x62E29f417c19d0ef3F6523e0033Aa147C0cF1297", - "transactionHash": "0x8b320a8cc5b63cad1ba8cde097066fae969ac4dab281941ba762f321d8b125b6" + "address": "0x3eDD82d401AD86891d6E3A88Ee6b8aC0a365cE7b", + "transactionHash": "0xf867acd05eb87c75ea0b2172b6bb827847003c8788fd852b742fca0681e6277b" } }, "schemaVersion": "3.3.2", - "updatedAt": "2021-05-01T11:16:10.922Z", + "updatedAt": "2021-05-02T12:42:44.222Z", "networkType": "ethereum", "devdoc": { - "methods": {} + "methods": {}, + "title": "Doneth (Doneth)" }, "userdoc": { "methods": {} diff --git a/build/contracts/ERC20.json b/build/contracts/ERC20.json index a3bc5dd1..090d7168 100644 --- a/build/contracts/ERC20.json +++ b/build/contracts/ERC20.json @@ -180,28 +180,25 @@ "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", - "source": "pragma solidity ^0.4.15;\n\n/**\n * @title Doneth (Doneth)\n * @dev Doneth is a contract that allows shared access to funds\n * in the form of Ether and ERC20 tokens. It is especially relevant\n * to donation based projects. The admins of the contract determine \n * who is a member, and each member gets a number of shares. The \n * number of shares each member has determines how much Ether/ERC20 \n * the member can withdraw from the contract.\n */\n\n/*\n * Ownable\n *\n * Base contract with an owner.\n * Provides onlyOwner modifier, which prevents function from running\n * if it is called by anyone other than the owner.\n */\n\ncontract Ownable {\n address public owner;\n\n function Ownable() public {\n owner = tx.origin;\n }\n\n modifier onlyOwner() {\n require(msg.sender == owner || tx.origin == owner);\n _;\n }\n\n function transferOwnership(address newOwner) onlyOwner public {\n if (newOwner != address(0)) {\n owner = newOwner;\n }\n }\n}\n\ncontract Doneth is Ownable {\n using SafeMath for uint256; \n\n bool public initialized;\n\n // Name of the contract\n string public name;\n\n // Sum of all shares allocated to members\n uint256 public totalShares;\n\n // Sum of all withdrawals done by members\n uint256 public totalWithdrawn;\n\n // Block number of when the contract was created\n uint256 public genesisBlockNumber;\n\n // Number of decimal places for floating point division\n uint256 constant public PRECISION = 18;\n\n // Variables for shared expense allocation\n uint256 public sharedExpense;\n uint256 public sharedExpenseWithdrawn;\n\n // Used to keep track of members\n mapping(address => Member) public members;\n address[] public memberKeys;\n struct Member {\n bool exists;\n bool admin;\n uint256 shares;\n uint256 withdrawn;\n string memberName;\n mapping(address => uint256) tokensWithdrawn;\n }\n\n // Used to keep track of ERC20 tokens used and how much withdrawn\n mapping(address => Token) public tokens;\n address[] public tokenKeys;\n struct Token {\n bool exists;\n uint256 totalWithdrawn;\n }\n\n // constructor() public {\n // genesisBlockNumber = block.number;\n // addMember(tx.origin, 1, true, \"\");\n // }\n\n\n function init(string _contractName, string _founderName) public {\n require(!initialized, \"ALREADY INITIALIZED\");\n initialized = true;\n owner = tx.origin;\n genesisBlockNumber = block.number;\n if (bytes(_contractName).length > 21) revert();\n if (bytes(_founderName).length > 21) revert();\n name = _contractName;\n // addMember(founder, 1, true, _founderName);\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = true;\n newMember.memberName = _founderName;\n\n members[tx.origin] = newMember;\n memberKeys.push(tx.origin);\n // addShare(tx.origin, shares);\n totalShares = totalShares.add(1);\n members[tx.origin].shares = members[tx.origin].shares.add(1);\n AddShare(tx.origin, 1, members[tx.origin].shares);\n // AddShare(tx.origin, 1, members[tx.origin].shares);\n // AddShare(msg.sender, 1, members[tx.origin].shares);\n }\n\n event Deposit(address from, uint value);\n event Withdraw(address from, uint value, uint256 newTotalWithdrawn);\n event TokenWithdraw(address from, uint value, address token, uint amount);\n event AddShare(address who, uint256 addedShares, uint256 newTotalShares);\n event RemoveShare(address who, uint256 removedShares, uint256 newTotalShares);\n event ChangePrivilege(address who, bool oldValue, bool newValue);\n event ChangeContractName(string oldValue, string newValue);\n event ChangeMemberName(address who, string oldValue, string newValue);\n event ChangeSharedExpense(uint256 contractBalance, uint256 oldValue, uint256 newValue);\n event WithdrawSharedExpense(address from, address to, uint value, uint256 newSharedExpenseWithdrawn);\n\n // Fallback function accepts Ether from donators\n function () public payable {\n Deposit(msg.sender, msg.value);\n }\n\n modifier onlyAdmin() { \n if (msg.sender != owner && !members[msg.sender].admin) revert(); \n _;\n }\n\n modifier onlyExisting(address who) { \n if (!members[who].exists) revert(); \n _;\n }\n\n // Series of getter functions for contract data\n function getMemberCount() public constant returns(uint) {\n return memberKeys.length;\n }\n \n function getMemberAtKey(uint key) public constant returns(address) {\n return memberKeys[key];\n }\n \n function getBalance() public constant returns(uint256 balance) {\n return this.balance;\n }\n \n function getContractInfo() public constant returns(string name, address owner, uint256 genesisBlockNumber, uint256 totalShares, uint256 totalWithdrawn) {\n return (string(name), owner, genesisBlockNumber, totalShares, totalWithdrawn);\n }\n \n function returnMember(address _address) public constant onlyExisting(_address) returns(bool admin, uint256 shares, uint256 withdrawn, string memberName) {\n Member memory m = members[_address];\n return (m.admin, m.shares, m.withdrawn, m.memberName);\n }\n\n function checkERC20Balance(address token) public constant returns(uint256) {\n return ERC20(token).balanceOf(address(this));\n // if (!tokens[token].exists && balance > 0) {\n // tokens[token].exists = true;\n // }\n // return balance;\n }\n\n // Function to add members to the contract \n function addMember(address who, uint256 shares, bool admin, string memberName) public onlyAdmin() {\n // Don't allow the same member to be added twice\n if (members[who].exists) revert();\n if (bytes(memberName).length > 21) revert();\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = admin;\n newMember.memberName = memberName;\n\n members[who] = newMember;\n memberKeys.push(who);\n addShare(who, shares);\n }\n\n function updateMember(address who, uint256 shares, bool isAdmin, string name) public onlyAdmin() {\n if (sha3(members[who].memberName) != sha3(name)) changeMemberName(who, name);\n if (members[who].admin != isAdmin) changeAdminPrivilege(who, isAdmin);\n if (members[who].shares != shares) allocateShares(who, shares);\n }\n\n // Only owner, admin or member can change member's name\n function changeMemberName(address who, string newName) public onlyExisting(who) {\n if (msg.sender != who && msg.sender != owner && !members[msg.sender].admin) revert();\n if (bytes(newName).length > 21) revert();\n ChangeMemberName(who, members[who].memberName, newName);\n members[who].memberName = newName;\n }\n\n function changeAdminPrivilege(address who, bool newValue) public onlyAdmin() {\n ChangePrivilege(who, members[who].admin, newValue);\n members[who].admin = newValue; \n }\n\n // Only admins and owners can change the contract name\n function changeContractName(string newName) public onlyAdmin() {\n if (bytes(newName).length > 21) revert();\n ChangeContractName(name, newName);\n name = newName;\n }\n\n // Shared expense allocation allows admins to withdraw an amount to be used for shared\n // expenses. Shared expense allocation subtracts from the total balance of the contract. \n // Only owner can change this amount.\n function changeSharedExpenseAllocation(uint256 newAllocation) public onlyOwner() {\n if (newAllocation < sharedExpenseWithdrawn) revert();\n if (newAllocation.sub(sharedExpenseWithdrawn) > this.balance) revert();\n\n ChangeSharedExpense(this.balance, sharedExpense, newAllocation);\n sharedExpense = newAllocation;\n }\n\n // Set share amount explicitly by calculating difference then adding or removing accordingly\n function allocateShares(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n uint256 currentShares = members[who].shares;\n if (amount == currentShares) revert();\n if (amount > currentShares) {\n addShare(who, amount.sub(currentShares));\n } else {\n removeShare(who, currentShares.sub(amount));\n }\n }\n\n // Increment the number of shares for a member\n function addShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.add(amount);\n members[who].shares = members[who].shares.add(amount);\n AddShare(who, amount, members[who].shares);\n }\n\n // Decrement the number of shares for a member\n function removeShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.sub(amount);\n members[who].shares = members[who].shares.sub(amount);\n RemoveShare(who, amount, members[who].shares);\n }\n\n // Function for a member to withdraw Ether from the contract proportional\n // to the amount of shares they have. Calculates the totalWithdrawableAmount\n // in Ether based on the member's share and the Ether balance of the contract,\n // then subtracts the amount of Ether that the member has already previously\n // withdrawn.\n function withdraw(uint256 amount) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableAmount(msg.sender);\n if (amount > newTotal.sub(members[msg.sender].withdrawn)) revert();\n \n members[msg.sender].withdrawn = members[msg.sender].withdrawn.add(amount);\n totalWithdrawn = totalWithdrawn.add(amount);\n msg.sender.transfer(amount);\n Withdraw(msg.sender, amount, totalWithdrawn);\n }\n\n // Withdrawal function for ERC20 tokens\n function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token);\n if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert();\n\n members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount);\n tokens[token].totalWithdrawn = tokens[token].totalWithdrawn.add(amount);\n ERC20(token).transfer(msg.sender, amount);\n TokenWithdraw(msg.sender, amount, token, tokens[token].totalWithdrawn);\n }\n\n // Withdraw from shared expense allocation. Total withdrawable is calculated as \n // sharedExpense minus sharedExpenseWithdrawn. Only Admin can withdraw from shared expense.\n function withdrawSharedExpense(uint256 amount, address to) public onlyAdmin() {\n if (amount > calculateTotalExpenseWithdrawableAmount()) revert();\n \n sharedExpenseWithdrawn = sharedExpenseWithdrawn.add(amount);\n to.transfer(amount);\n WithdrawSharedExpense(msg.sender, to, amount, sharedExpenseWithdrawn);\n }\n\n // Converts from shares to Eth.\n // Ex: 2 shares, 4 total shares, 40 Eth balance\n // 40 Eth / 4 total shares = 10 eth per share * 2 shares = 20 Eth to cash out\n function calculateTotalWithdrawableAmount(address who) public constant onlyExisting(who) returns (uint256) {\n // Total balance to calculate share from = \n // contract balance + totalWithdrawn - sharedExpense + sharedExpenseWithdrawn\n uint256 balanceSum = this.balance.add(totalWithdrawn);\n balanceSum = balanceSum.sub(sharedExpense);\n balanceSum = balanceSum.add(sharedExpenseWithdrawn);\n \n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 ethPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 ethPPN = ethPerSharePPN.mul(members[who].shares);\n uint256 ethVal = ethPPN.div(10**PRECISION); \n return ethVal;\n }\n\n\n function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) {\n uint256 balanceSum = checkERC20Balance(token).add(tokens[token].totalWithdrawn);\n\n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 tokPPN = tokPerSharePPN.mul(members[who].shares);\n uint256 tokVal = tokPPN.div(10**PRECISION); \n return tokVal;\n }\n\n function calculateTotalExpenseWithdrawableAmount() public constant returns(uint256) {\n return sharedExpense.sub(sharedExpenseWithdrawn);\n }\n\n // Used for testing\n function delegatePercent(uint256 a, uint256 b, uint256 c) public constant returns (uint256) {\n return a.percent(b, c);\n }\n}\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n\n // Using from SO: https://stackoverflow.com/questions/42738640/division-in-ethereum-solidity/42739843#42739843\n // Adapted to use SafeMath and uint256.\n function percent(uint256 numerator, uint256 denominator, uint256 precision) internal constant returns(uint256 quotient) {\n // caution, check safe-to-multiply here\n uint256 _numerator = mul(numerator, 10 ** (precision+1));\n // with rounding of last digit\n uint256 _quotient = (div(_numerator, denominator) + 5) / 10;\n return (_quotient);\n }\n}\n\n", + "source": "pragma solidity ^0.4.15;\n\n/**\n * @title Doneth (Doneth)\n * @dev Doneth is a contract that allows shared access to funds\n * in the form of Ether and ERC20 tokens. It is especially relevant\n * to donation based projects. The admins of the contract determine \n * who is a member, and each member gets a number of shares. The \n * number of shares each member has determines how much Ether/ERC20 \n * the member can withdraw from the contract.\n */\n\n\ncontract Doneth {\n\n address public implementation;\n // constructor(address _implementation) public {}\n\n address public owner;\n\n function Ownable() public {\n owner = tx.origin;\n }\n\n modifier onlyOwner() {\n require(msg.sender == owner || tx.origin == owner);\n _;\n }\n\n function transferOwnership(address newOwner) onlyOwner public {\n if (newOwner != address(0)) {\n owner = newOwner;\n }\n }\n\n using SafeMath for uint256; \n\n bool public initialized;\n\n // Name of the contract\n string public name;\n\n // Sum of all shares allocated to members\n uint256 public totalShares;\n\n // Sum of all withdrawals done by members\n uint256 public totalWithdrawn;\n\n // Block number of when the contract was created\n uint256 public genesisBlockNumber;\n\n // Number of decimal places for floating point division\n uint256 constant public PRECISION = 18;\n\n // Variables for shared expense allocation\n uint256 public sharedExpense;\n uint256 public sharedExpenseWithdrawn;\n\n // Used to keep track of members\n mapping(address => Member) public members;\n address[] public memberKeys;\n struct Member {\n bool exists;\n bool admin;\n uint256 shares;\n uint256 withdrawn;\n string memberName;\n mapping(address => uint256) tokensWithdrawn;\n }\n\n // Used to keep track of ERC20 tokens used and how much withdrawn\n mapping(address => uint256) public tokens;\n\n function init() public {\n require(!initialized);\n initialized = true;\n\n owner = tx.origin;\n genesisBlockNumber = block.number;\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = true;\n members[tx.origin] = newMember;\n memberKeys.push(tx.origin);\n\n totalShares = totalShares.add(1);\n members[tx.origin].shares = members[tx.origin].shares.add(1);\n AddShare(tx.origin, 1, members[tx.origin].shares);\n }\n\n event Deposit(address from, uint value);\n event Withdraw(address from, uint value, uint256 newTotalWithdrawn);\n event TokenWithdraw(address from, uint value, address token, uint amount);\n event AddShare(address who, uint256 addedShares, uint256 newTotalShares);\n event RemoveShare(address who, uint256 removedShares, uint256 newTotalShares);\n event ChangePrivilege(address who, bool oldValue, bool newValue);\n event ChangeContractName(string oldValue, string newValue);\n event ChangeMemberName(address who, string oldValue, string newValue);\n event ChangeSharedExpense(uint256 contractBalance, uint256 oldValue, uint256 newValue);\n event WithdrawSharedExpense(address from, address to, uint value, uint256 newSharedExpenseWithdrawn);\n\n // Fallback function accepts Ether from donators\n function () public payable {\n Deposit(msg.sender, msg.value);\n }\n\n modifier onlyAdmin() { \n if (msg.sender != owner && !members[msg.sender].admin) revert(); \n _;\n }\n\n modifier onlyExisting(address who) { \n if (!members[who].exists) revert(); \n _;\n }\n\n // Series of getter functions for contract data\n function getMemberCount() public constant returns(uint) {\n return memberKeys.length;\n }\n \n function getMemberAtKey(uint key) public constant returns(address) {\n return memberKeys[key];\n }\n \n function getBalance() public constant returns(uint256 balance) {\n return this.balance;\n }\n \n function getContractInfo() public constant returns(string name, address owner, uint256 genesisBlockNumber, uint256 totalShares, uint256 totalWithdrawn) {\n return (string(name), owner, genesisBlockNumber, totalShares, totalWithdrawn);\n }\n \n function returnMember(address _address) public constant onlyExisting(_address) returns(bool admin, uint256 shares, uint256 withdrawn, string memberName) {\n Member memory m = members[_address];\n return (m.admin, m.shares, m.withdrawn, m.memberName);\n }\n\n function checkERC20Balance(address token) public constant returns(uint256) {\n return ERC20(token).balanceOf(address(this));\n }\n\n // Function to add members to the contract \n function addMember(address who, uint256 shares, bool admin, string memberName) public onlyAdmin() {\n // Don't allow the same member to be added twice\n if (members[who].exists) revert();\n if (bytes(memberName).length > 21) revert();\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = admin;\n newMember.memberName = memberName;\n\n members[who] = newMember;\n memberKeys.push(who);\n addShare(who, shares);\n }\n\n function updateMember(address who, uint256 shares, bool isAdmin, string name) public onlyAdmin() {\n if (sha3(members[who].memberName) != sha3(name)) changeMemberName(who, name);\n if (members[who].admin != isAdmin) changeAdminPrivilege(who, isAdmin);\n if (members[who].shares != shares) allocateShares(who, shares);\n }\n\n // Only owner, admin or member can change member's name\n function changeMemberName(address who, string newName) public onlyExisting(who) {\n if (msg.sender != who && msg.sender != owner && !members[msg.sender].admin) revert();\n if (bytes(newName).length > 21) revert();\n ChangeMemberName(who, members[who].memberName, newName);\n members[who].memberName = newName;\n }\n\n function changeAdminPrivilege(address who, bool newValue) public onlyAdmin() {\n ChangePrivilege(who, members[who].admin, newValue);\n members[who].admin = newValue; \n }\n\n // Only admins and owners can change the contract name\n function changeContractName(string newName) public onlyAdmin() {\n if (bytes(newName).length > 21) revert();\n ChangeContractName(name, newName);\n name = newName;\n }\n\n // Shared expense allocation allows admins to withdraw an amount to be used for shared\n // expenses. Shared expense allocation subtracts from the total balance of the contract. \n // Only owner can change this amount.\n function changeSharedExpenseAllocation(uint256 newAllocation) public onlyOwner() {\n if (newAllocation < sharedExpenseWithdrawn) revert();\n if (newAllocation.sub(sharedExpenseWithdrawn) > this.balance) revert();\n\n ChangeSharedExpense(this.balance, sharedExpense, newAllocation);\n sharedExpense = newAllocation;\n }\n\n // Set share amount explicitly by calculating difference then adding or removing accordingly\n function allocateShares(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n uint256 currentShares = members[who].shares;\n if (amount == currentShares) revert();\n if (amount > currentShares) {\n addShare(who, amount.sub(currentShares));\n } else {\n removeShare(who, currentShares.sub(amount));\n }\n }\n\n // Increment the number of shares for a member\n function addShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.add(amount);\n members[who].shares = members[who].shares.add(amount);\n AddShare(who, amount, members[who].shares);\n }\n\n // Decrement the number of shares for a member\n function removeShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.sub(amount);\n members[who].shares = members[who].shares.sub(amount);\n RemoveShare(who, amount, members[who].shares);\n }\n\n // Function for a member to withdraw Ether from the contract proportional\n // to the amount of shares they have. Calculates the totalWithdrawableAmount\n // in Ether based on the member's share and the Ether balance of the contract,\n // then subtracts the amount of Ether that the member has already previously\n // withdrawn.\n function withdraw(uint256 amount) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableAmount(msg.sender);\n if (amount > newTotal.sub(members[msg.sender].withdrawn)) revert();\n \n members[msg.sender].withdrawn = members[msg.sender].withdrawn.add(amount);\n totalWithdrawn = totalWithdrawn.add(amount);\n msg.sender.transfer(amount);\n Withdraw(msg.sender, amount, totalWithdrawn);\n }\n\n // Withdrawal function for ERC20 tokensx\n function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token);\n if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert();\n\n members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount);\n tokens[token] = tokens[token].add(amount);\n ERC20(token).transfer(msg.sender, amount);\n TokenWithdraw(msg.sender, amount, token, tokens[token]);\n }\n\n // Withdraw from shared expense allocation. Total withdrawable is calculated as \n // sharedExpense minus sharedExpenseWithdrawn. Only Admin can withdraw from shared expense.\n function withdrawSharedExpense(uint256 amount, address to) public onlyAdmin() {\n if (amount > calculateTotalExpenseWithdrawableAmount()) revert();\n \n sharedExpenseWithdrawn = sharedExpenseWithdrawn.add(amount);\n to.transfer(amount);\n WithdrawSharedExpense(msg.sender, to, amount, sharedExpenseWithdrawn);\n }\n\n // Converts from shares to Eth.\n // Ex: 2 shares, 4 total shares, 40 Eth balance\n // 40 Eth / 4 total shares = 10 eth per share * 2 shares = 20 Eth to cash out\n function calculateTotalWithdrawableAmount(address who) public constant onlyExisting(who) returns (uint256) {\n // Total balance to calculate share from = \n // contract balance + totalWithdrawn - sharedExpense + sharedExpenseWithdrawn\n uint256 balanceSum = this.balance.add(totalWithdrawn);\n balanceSum = balanceSum.sub(sharedExpense);\n balanceSum = balanceSum.add(sharedExpenseWithdrawn);\n \n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 ethPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 ethPPN = ethPerSharePPN.mul(members[who].shares);\n uint256 ethVal = ethPPN.div(10**PRECISION); \n return ethVal;\n }\n\n\n function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) {\n uint256 balanceSum = checkERC20Balance(token).add(tokens[token]);\n\n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 tokPPN = tokPerSharePPN.mul(members[who].shares);\n uint256 tokVal = tokPPN.div(10**PRECISION); \n return tokVal;\n }\n\n function calculateTotalExpenseWithdrawableAmount() public constant returns(uint256) {\n return sharedExpense.sub(sharedExpenseWithdrawn);\n }\n\n // Used for testing\n function delegatePercent(uint256 a, uint256 b, uint256 c) public constant returns (uint256) {\n return a.percent(b, c);\n }\n}\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n\n // Using from SO: https://stackoverflow.com/questions/42738640/division-in-ethereum-solidity/42739843#42739843\n // Adapted to use SafeMath and uint256.\n function percent(uint256 numerator, uint256 denominator, uint256 precision) internal constant returns(uint256 quotient) {\n // caution, check safe-to-multiply here\n uint256 _numerator = mul(numerator, 10 ** (precision+1));\n // with rounding of last digit\n uint256 _quotient = (div(_numerator, denominator) + 5) / 10;\n return (_quotient);\n }\n}\n\n", "sourcePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "ast": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "exportedSymbols": { "Doneth": [ - 1194 + 1146 ], "ERC20": [ - 1261 + 1213 ], "ERC20Basic": [ - 1221 - ], - "Ownable": [ - 48 + 1173 ], "SafeMath": [ - 1393 + 1345 ] }, - "id": 1394, + "id": 1346, "nodeType": "SourceUnit", "nodes": [ { @@ -221,20 +218,20 @@ "contractKind": "contract", "documentation": "@title Doneth (Doneth)\n@dev Doneth is a contract that allows shared access to funds\nin the form of Ether and ERC20 tokens. It is especially relevant\nto donation based projects. The admins of the contract determine \nwho is a member, and each member gets a number of shares. The \nnumber of shares each member has determines how much Ether/ERC20 \nthe member can withdraw from the contract.", "fullyImplemented": true, - "id": 48, + "id": 1146, "linearizedBaseContracts": [ - 48 + 1146 ], - "name": "Ownable", + "name": "Doneth", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 3, - "name": "owner", + "name": "implementation", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "640:20:0", + "scope": 1146, + "src": "467:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -245,7 +242,33 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "640:7:0", + "src": "467:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1146, + "src": "557:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -256,26 +279,26 @@ }, { "body": { - "id": 11, + "id": 13, "nodeType": "Block", - "src": "693:34:0", + "src": "610:34:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 9, + "id": 11, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 6, + "id": 8, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "703:5:0", + "referencedDeclaration": 5, + "src": "620:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -287,18 +310,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 7, + "id": 9, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "711:2:0", + "referencedDeclaration": 1512, + "src": "628:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 8, + "id": 10, "isConstant": false, "isLValue": false, "isPure": false, @@ -306,56 +329,56 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "711:9:0", + "src": "628:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "703:17:0", + "src": "620:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 10, + "id": 12, "nodeType": "ExpressionStatement", - "src": "703:17:0" + "src": "620:17:0" } ] }, "documentation": null, - "id": 12, + "id": 14, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 4, + "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "683:2:0" + "src": "600:2:0" }, "payable": false, "returnParameters": { - "id": 5, + "id": 7, "nodeType": "ParameterList", "parameters": [], - "src": "693:0:0" + "src": "610:0:0" }, - "scope": 48, - "src": "667:60:0", + "scope": 1146, + "src": "584:60:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 27, + "id": 29, "nodeType": "Block", - "src": "754:78:0", + "src": "671:78:0", "statements": [ { "expression": { @@ -367,7 +390,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 23, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -378,7 +401,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18, + "id": 20, "isConstant": false, "isLValue": false, "isPure": false, @@ -387,18 +410,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 15, + "id": 17, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "772:3:0", + "referencedDeclaration": 1500, + "src": "689:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 16, + "id": 18, "isConstant": false, "isLValue": false, "isPure": false, @@ -406,7 +429,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "772:10:0", + "src": "689:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -416,18 +439,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 17, + "id": 19, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "786:5:0", + "referencedDeclaration": 5, + "src": "703:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "772:19:0", + "src": "689:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -441,7 +464,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 22, + "id": 24, "isConstant": false, "isLValue": false, "isPure": false, @@ -450,18 +473,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 19, + "id": 21, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "795:2:0", + "referencedDeclaration": 1512, + "src": "712:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 20, + "id": 22, "isConstant": false, "isLValue": false, "isPure": false, @@ -469,7 +492,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "795:9:0", + "src": "712:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -479,24 +502,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 21, + "id": 23, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "808:5:0", + "referencedDeclaration": 5, + "src": "725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "795:18:0", + "src": "712:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "772:41:0", + "src": "689:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -510,21 +533,21 @@ "typeString": "bool" } ], - "id": 14, + "id": 16, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1514, - "src": "764:7:0", + "referencedDeclaration": 1503, + "src": "681:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 24, + "id": 26, "isConstant": false, "isLValue": false, "isPure": false, @@ -532,41 +555,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "764:50:0", + "src": "681:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25, + "id": 27, "nodeType": "ExpressionStatement", - "src": "764:50:0" + "src": "681:50:0" }, { - "id": 26, + "id": 28, "nodeType": "PlaceholderStatement", - "src": "824:1:0" + "src": "741:1:0" } ] }, "documentation": null, - "id": 28, + "id": 30, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 13, + "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "751:2:0" + "src": "668:2:0" }, - "src": "733:99:0", + "src": "650:99:0", "visibility": "internal" }, { "body": { - "id": 46, + "id": 48, "nodeType": "Block", - "src": "900:85:0", + "src": "817:85:0", "statements": [ { "condition": { @@ -575,19 +598,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 39, + "id": 41, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 35, + "id": 37, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "914:8:0", + "referencedDeclaration": 32, + "src": "831:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -601,14 +624,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 37, + "id": 39, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "934:1:0", + "src": "851:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -624,20 +647,20 @@ "typeString": "int_const 0" } ], - "id": 36, + "id": 38, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "926:7:0", + "src": "843:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 38, + "id": 40, "isConstant": false, "isLValue": false, "isPure": true, @@ -645,43 +668,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "926:10:0", + "src": "843:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "914:22:0", + "src": "831:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 45, + "id": 47, "nodeType": "IfStatement", - "src": "910:69:0", + "src": "827:69:0", "trueBody": { - "id": 44, + "id": 46, "nodeType": "Block", - "src": "938:41:0", + "src": "855:41:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 42, + "id": 44, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 40, + "id": 42, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "952:5:0", + "referencedDeclaration": 5, + "src": "869:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -691,26 +714,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 41, + "id": 43, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "960:8:0", + "referencedDeclaration": 32, + "src": "877:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "952:16:0", + "src": "869:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 43, + "id": 45, "nodeType": "ExpressionStatement", - "src": "952:16:0" + "src": "869:16:0" } ] } @@ -718,44 +741,44 @@ ] }, "documentation": null, - "id": 47, + "id": 49, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 33, + "id": 35, "modifierName": { "argumentTypes": null, - "id": 32, + "id": 34, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "883:9:0", + "referencedDeclaration": 30, + "src": "800:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "883:9:0" + "src": "800:9:0" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 31, + "id": 33, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30, + "id": 32, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 47, - "src": "865:16:0", + "scope": 49, + "src": "782:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -763,10 +786,10 @@ "typeString": "address" }, "typeName": { - "id": 29, + "id": 31, "name": "address", "nodeType": "ElementaryTypeName", - "src": "865:7:0", + "src": "782:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -776,81 +799,42 @@ "visibility": "internal" } ], - "src": "864:18:0" + "src": "781:18:0" }, "payable": false, "returnParameters": { - "id": 34, + "id": 36, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:0" + "src": "817:0:0" }, - "scope": 48, - "src": "838:147:0", + "scope": 1146, + "src": "755:147:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" - } - ], - "scope": 1394, - "src": "617:370:0" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 49, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "1008:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$48", - "typeString": "contract Ownable" - } - }, - "id": 50, - "nodeType": "InheritanceSpecifier", - "src": "1008:7:0" - } - ], - "contractDependencies": [ - 48 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1194, - "linearizedBaseContracts": [ - 1194, - 48 - ], - "name": "Doneth", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "id": 53, + "id": 52, "libraryName": { "contractScope": null, - "id": 51, + "id": 50, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1393, - "src": "1028:8:0", + "referencedDeclaration": 1345, + "src": "914:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$1393", + "typeIdentifier": "t_contract$_SafeMath_$1345", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1022:27:0", + "src": "908:27:0", "typeName": { - "id": 52, + "id": 51, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1041:7:0", + "src": "927:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -859,11 +843,11 @@ }, { "constant": false, - "id": 55, + "id": 54, "name": "initialized", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1057:23:0", + "scope": 1146, + "src": "943:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -871,10 +855,10 @@ "typeString": "bool" }, "typeName": { - "id": 54, + "id": 53, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1057:4:0", + "src": "943:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -885,11 +869,11 @@ }, { "constant": false, - "id": 57, + "id": 56, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1115:18:0", + "scope": 1146, + "src": "1001:18:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -897,10 +881,10 @@ "typeString": "string" }, "typeName": { - "id": 56, + "id": 55, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1115:6:0", + "src": "1001:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -911,11 +895,11 @@ }, { "constant": false, - "id": 59, + "id": 58, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1186:26:0", + "scope": 1146, + "src": "1072:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -923,10 +907,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 57, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1186:7:0", + "src": "1072:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -937,11 +921,11 @@ }, { "constant": false, - "id": 61, + "id": 60, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1265:29:0", + "scope": 1146, + "src": "1151:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -949,10 +933,10 @@ "typeString": "uint256" }, "typeName": { - "id": 60, + "id": 59, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1265:7:0", + "src": "1151:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -963,11 +947,11 @@ }, { "constant": false, - "id": 63, + "id": 62, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1354:33:0", + "scope": 1146, + "src": "1240:33:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -975,10 +959,10 @@ "typeString": "uint256" }, "typeName": { - "id": 62, + "id": 61, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1354:7:0", + "src": "1240:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -989,11 +973,11 @@ }, { "constant": true, - "id": 66, + "id": 65, "name": "PRECISION", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1454:38:0", + "scope": 1146, + "src": "1340:38:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1001,10 +985,10 @@ "typeString": "uint256" }, "typeName": { - "id": 64, + "id": 63, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1454:7:0", + "src": "1340:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1013,14 +997,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 65, + "id": 64, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1490:2:0", + "src": "1376:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -1032,11 +1016,11 @@ }, { "constant": false, - "id": 68, + "id": 67, "name": "sharedExpense", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1546:28:0", + "scope": 1146, + "src": "1432:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1044,10 +1028,10 @@ "typeString": "uint256" }, "typeName": { - "id": 67, + "id": 66, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1546:7:0", + "src": "1432:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1058,11 +1042,11 @@ }, { "constant": false, - "id": 70, + "id": 69, "name": "sharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1580:37:0", + "scope": 1146, + "src": "1466:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1070,10 +1054,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 68, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1580:7:0", + "src": "1466:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1084,44 +1068,44 @@ }, { "constant": false, - "id": 74, + "id": 73, "name": "members", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1661:41:0", + "scope": 1146, + "src": "1547:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "typeName": { - "id": 73, + "id": 72, "keyType": { - "id": 71, + "id": 70, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1669:7:0", + "src": "1555:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1661:26:0", + "src": "1547:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "valueType": { "contractScope": null, - "id": 72, + "id": 71, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "1680:6:0", + "referencedDeclaration": 91, + "src": "1566:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } } @@ -1131,11 +1115,11 @@ }, { "constant": false, - "id": 77, + "id": 76, "name": "memberKeys", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1708:27:0", + "scope": 1146, + "src": "1594:27:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1144,19 +1128,19 @@ }, "typeName": { "baseType": { - "id": 75, + "id": 74, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1708:7:0", + "src": "1594:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 76, + "id": 75, "length": null, "nodeType": "ArrayTypeName", - "src": "1708:9:0", + "src": "1594:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -1167,15 +1151,15 @@ }, { "canonicalName": "Doneth.Member", - "id": 92, + "id": 91, "members": [ { "constant": false, - "id": 79, + "id": 78, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1765:11:0", + "scope": 91, + "src": "1651:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1183,10 +1167,10 @@ "typeString": "bool" }, "typeName": { - "id": 78, + "id": 77, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1765:4:0", + "src": "1651:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1197,11 +1181,11 @@ }, { "constant": false, - "id": 81, + "id": 80, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1786:10:0", + "scope": 91, + "src": "1672:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1209,10 +1193,10 @@ "typeString": "bool" }, "typeName": { - "id": 80, + "id": 79, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1786:4:0", + "src": "1672:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1223,11 +1207,11 @@ }, { "constant": false, - "id": 83, + "id": 82, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1806:14:0", + "scope": 91, + "src": "1692:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1235,10 +1219,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 81, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1806:7:0", + "src": "1692:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1249,11 +1233,11 @@ }, { "constant": false, - "id": 85, + "id": 84, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1830:17:0", + "scope": 91, + "src": "1716:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1261,10 +1245,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 83, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1830:7:0", + "src": "1716:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1275,11 +1259,11 @@ }, { "constant": false, - "id": 87, + "id": 86, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1857:17:0", + "scope": 91, + "src": "1743:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1287,10 +1271,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 85, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1857:6:0", + "src": "1743:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1301,11 +1285,11 @@ }, { "constant": false, - "id": 91, + "id": 90, "name": "tokensWithdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1884:43:0", + "scope": 91, + "src": "1770:43:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1313,28 +1297,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 90, + "id": 89, "keyType": { - "id": 88, + "id": 87, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1892:7:0", + "src": "1778:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1884:27:0", + "src": "1770:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 89, + "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1903:7:0", + "src": "1789:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1347,161 +1331,60 @@ ], "name": "Member", "nodeType": "StructDefinition", - "scope": 1194, - "src": "1741:193:0", + "scope": 1146, + "src": "1627:193:0", "visibility": "public" }, { "constant": false, - "id": 96, + "id": 95, "name": "tokens", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2010:39:0", + "scope": 1146, + "src": "1896:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 95, + "id": 94, "keyType": { - "id": 93, + "id": 92, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:7:0", + "src": "1904:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2010:25:0", + "src": "1896:27:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "valueType": { - "contractScope": null, - "id": 94, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 104, - "src": "2029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage_ptr", - "typeString": "struct Doneth.Token" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "tokenKeys", - "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2055:26:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", + "id": 93, + "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2055:7:0", + "src": "1915:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2055:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" } }, "value": null, "visibility": "public" }, - { - "canonicalName": "Doneth.Token", - "id": 104, - "members": [ - { - "constant": false, - "id": 101, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2110:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 100, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2110:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "name": "totalWithdrawn", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2131:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 102, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2131:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Token", - "nodeType": "StructDefinition", - "scope": 1194, - "src": "2087:73:0", - "visibility": "public" - }, { "body": { - "id": 223, + "id": 179, "nodeType": "Block", - "src": "2363:911:0", + "src": "1967:484:0", "statements": [ { "expression": { @@ -1509,7 +1392,7 @@ "arguments": [ { "argumentTypes": null, - "id": 113, + "id": 100, "isConstant": false, "isLValue": false, "isPure": false, @@ -1517,15 +1400,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2381:12:0", + "src": "1985:12:0", "subExpression": { "argumentTypes": null, - "id": 112, + "id": 99, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2382:11:0", + "referencedDeclaration": 54, + "src": "1986:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1535,24 +1418,6 @@ "typeIdentifier": "t_bool", "typeString": "bool" } - }, - { - "argumentTypes": null, - "hexValue": "414c524541445920494e495449414c495a4544", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2395:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" - }, - "value": "ALREADY INITIALIZED" } ], "expression": { @@ -1560,27 +1425,23 @@ { "typeIdentifier": "t_bool", "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" } ], - "id": 111, + "id": 98, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1515, - "src": "2373:7:0", + "referencedDeclaration": 1503, + "src": "1977:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 115, + "id": 101, "isConstant": false, "isLValue": false, "isPure": false, @@ -1588,32 +1449,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2373:44:0", + "src": "1977:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 116, + "id": 102, "nodeType": "ExpressionStatement", - "src": "2373:44:0" + "src": "1977:21:0" }, { "expression": { "argumentTypes": null, - "id": 119, + "id": 105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 117, + "id": 103, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2427:11:0", + "referencedDeclaration": 54, + "src": "2008:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1624,14 +1485,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 118, + "id": 104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2441:4:0", + "src": "2022:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1639,32 +1500,32 @@ }, "value": "true" }, - "src": "2427:18:0", + "src": "2008:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 120, + "id": 106, "nodeType": "ExpressionStatement", - "src": "2427:18:0" + "src": "2008:18:0" }, { "expression": { "argumentTypes": null, - "id": 124, + "id": 110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 121, + "id": 107, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "2455:5:0", + "referencedDeclaration": 5, + "src": "2037:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1676,18 +1537,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 122, + "id": 108, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2463:2:0", + "referencedDeclaration": 1512, + "src": "2045:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 123, + "id": 109, "isConstant": false, "isLValue": false, "isPure": false, @@ -1695,38 +1556,38 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2463:9:0", + "src": "2045:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2455:17:0", + "src": "2037:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 125, + "id": 111, "nodeType": "ExpressionStatement", - "src": "2455:17:0" + "src": "2037:17:0" }, { "expression": { "argumentTypes": null, - "id": 129, + "id": 115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 126, + "id": 112, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "2482:18:0", + "referencedDeclaration": 62, + "src": "2064:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1738,18 +1599,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 127, + "id": 113, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1501, - "src": "2503:5:0", + "referencedDeclaration": 1490, + "src": "2085:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 128, + "id": 114, "isConstant": false, "isLValue": false, "isPure": false, @@ -1757,405 +1618,130 @@ "memberName": "number", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2503:12:0", + "src": "2085:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2482:33:0", + "src": "2064:33:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 130, + "id": 116, "nodeType": "ExpressionStatement", - "src": "2482:33:0" + "src": "2064:33:0" }, { - "condition": { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 118, + "name": "newMember", + "nodeType": "VariableDeclaration", + "scope": 180, + "src": "2108:23:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member" + }, + "typeName": { + "contractScope": null, + "id": 117, + "name": "Member", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 91, + "src": "2108:6:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", + "typeString": "struct Doneth.Member" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 119, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "2108:23:0" + }, + { + "expression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 136, + "id": 124, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { + "leftHandSide": { "argumentTypes": null, "expression": { "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 132, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2535:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2529:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2529:20:0", + "id": 120, + "name": "newMember", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 118, + "src": "2141:9:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2529:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2559:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2529:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 140, - "nodeType": "IfStatement", - "src": "2525:46:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 137, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2563:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2563:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2563:8:0" - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 142, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2591:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 141, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2585:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2585:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member memory" } }, - "id": 144, + "id": 122, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberName": "length", + "lValueRequested": true, + "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2585:26:0", + "referencedDeclaration": 78, + "src": "2141:16:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "hexValue": "3231", - "id": 145, + "hexValue": "74727565", + "id": 123, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "number", + "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2614:2:0", + "src": "2160:4:0", "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "value": "21" + "value": "true" }, - "src": "2585:31:0", + "src": "2141:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "falseBody": null, - "id": 150, - "nodeType": "IfStatement", - "src": "2581:45:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 147, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2618:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2618:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:8:0" - } - }, - { - "expression": { - "argumentTypes": null, - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 151, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "2636:4:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 152, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2643:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2636:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 154, + "id": 125, "nodeType": "ExpressionStatement", - "src": "2636:20:0" - }, - { - "assignments": [], - "declarations": [ - { - "constant": false, - "id": 156, - "name": "newMember", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2721:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member" - }, - "typeName": { - "contractScope": null, - "id": 155, - "name": "Member", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "2721:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", - "typeString": "struct Doneth.Member" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 157, - "initialValue": null, - "nodeType": "VariableDeclarationStatement", - "src": "2721:23:0" + "src": "2141:23:0" }, { "expression": { "argumentTypes": null, - "id": 162, + "id": 130, "isConstant": false, "isLValue": false, "isPure": false, @@ -2164,26 +1750,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 158, + "id": 126, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2754:9:0", + "referencedDeclaration": 118, + "src": "2174:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 160, + "id": 128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "exists", + "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "2754:16:0", + "referencedDeclaration": 80, + "src": "2174:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2194,14 +1780,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 161, + "id": 129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2773:4:0", + "src": "2192:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2209,185 +1795,56 @@ }, "value": "true" }, - "src": "2754:23:0", + "src": "2174:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 163, + "id": 131, "nodeType": "ExpressionStatement", - "src": "2754:23:0" + "src": "2174:22:0" }, { "expression": { "argumentTypes": null, - "id": 168, + "id": 137, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "id": 164, - "name": "newMember", + "id": 132, + "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2787:9:0", + "referencedDeclaration": 73, + "src": "2206:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", + "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 166, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "admin", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "2787:15:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 167, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2805:4:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2787:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "2787:22:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 170, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2819:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 172, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "memberName", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "2819:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 173, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2842:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2819:35:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 175, - "nodeType": "ExpressionStatement", - "src": "2819:35:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 176, - "name": "members", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "2865:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", - "typeString": "mapping(address => struct Doneth.Member storage ref)" - } - }, - "id": 179, + "id": 135, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 177, + "id": 133, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2873:2:0", + "referencedDeclaration": 1512, + "src": "2214:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 178, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -2395,7 +1852,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2873:9:0", + "src": "2214:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2406,9 +1863,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2865:18:0", + "src": "2206:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -2416,26 +1873,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 180, + "id": 136, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2886:9:0", + "referencedDeclaration": 118, + "src": "2227:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "2865:30:0", + "src": "2206:30:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 182, + "id": 138, "nodeType": "ExpressionStatement", - "src": "2865:30:0" + "src": "2206:30:0" }, { "expression": { @@ -2445,18 +1902,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 186, + "id": 142, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2921:2:0", + "referencedDeclaration": 1512, + "src": "2262:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 187, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -2464,7 +1921,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2921:9:0", + "src": "2262:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2480,18 +1937,18 @@ ], "expression": { "argumentTypes": null, - "id": 183, + "id": 139, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "2905:10:0", + "referencedDeclaration": 76, + "src": "2246:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 185, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -2499,13 +1956,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2905:15:0", + "src": "2246:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 188, + "id": 144, "isConstant": false, "isLValue": false, "isPure": false, @@ -2513,32 +1970,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2905:26:0", + "src": "2246:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 189, + "id": 145, "nodeType": "ExpressionStatement", - "src": "2905:26:0" + "src": "2246:26:0" }, { "expression": { "argumentTypes": null, - "id": 195, + "id": 151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 190, + "id": 146, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2981:11:0", + "referencedDeclaration": 58, + "src": "2283:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2552,14 +2009,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 193, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3011:1:0", + "src": "2313:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2577,32 +2034,32 @@ ], "expression": { "argumentTypes": null, - "id": 191, + "id": 147, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2995:11:0", + "referencedDeclaration": 58, + "src": "2297:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 192, + "id": 148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "2995:15:0", + "referencedDeclaration": 1305, + "src": "2297:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 194, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, @@ -2610,26 +2067,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2995:18:0", + "src": "2297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2981:32:0", + "src": "2283:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 196, + "id": 152, "nodeType": "ExpressionStatement", - "src": "2981:32:0" + "src": "2283:32:0" }, { "expression": { "argumentTypes": null, - "id": 210, + "id": 166, "isConstant": false, "isLValue": false, "isPure": false, @@ -2640,34 +2097,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 197, + "id": 153, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3023:7:0", + "referencedDeclaration": 73, + "src": "2325:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 200, + "id": 156, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 198, + "id": 154, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3031:2:0", + "referencedDeclaration": 1512, + "src": "2333:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 199, + "id": 155, "isConstant": false, "isLValue": false, "isPure": false, @@ -2675,7 +2132,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3031:9:0", + "src": "2333:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2686,21 +2143,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3023:18:0", + "src": "2325:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 201, + "id": 157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3023:25:0", + "referencedDeclaration": 82, + "src": "2325:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2714,14 +2171,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 208, + "id": 164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3081:1:0", + "src": "2383:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2743,34 +2200,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 202, + "id": 158, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3051:7:0", + "referencedDeclaration": 73, + "src": "2353:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 205, + "id": 161, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 203, + "id": 159, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3059:2:0", + "referencedDeclaration": 1512, + "src": "2361:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 204, + "id": 160, "isConstant": false, "isLValue": false, "isPure": false, @@ -2778,7 +2235,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3059:9:0", + "src": "2361:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2789,41 +2246,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3051:18:0", + "src": "2353:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 206, + "id": 162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3051:25:0", + "referencedDeclaration": 82, + "src": "2353:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 207, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "3051:29:0", + "referencedDeclaration": 1305, + "src": "2353:29:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 209, + "id": 165, "isConstant": false, "isLValue": false, "isPure": false, @@ -2831,21 +2288,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3051:32:0", + "src": "2353:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3023:60:0", + "src": "2325:60:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 211, + "id": 167, "nodeType": "ExpressionStatement", - "src": "3023:60:0" + "src": "2325:60:0" }, { "expression": { @@ -2855,18 +2312,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 213, + "id": 169, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3102:2:0", + "referencedDeclaration": 1512, + "src": "2404:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 214, + "id": 170, "isConstant": false, "isLValue": false, "isPure": false, @@ -2874,7 +2331,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3102:9:0", + "src": "2404:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2883,14 +2340,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 215, + "id": 171, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3113:1:0", + "src": "2415:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2904,34 +2361,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 216, + "id": 172, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3116:7:0", + "referencedDeclaration": 73, + "src": "2418:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 219, + "id": 175, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 217, + "id": 173, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3124:2:0", + "referencedDeclaration": 1512, + "src": "2426:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 218, + "id": 174, "isConstant": false, "isLValue": false, "isPure": false, @@ -2939,7 +2396,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3124:9:0", + "src": "2426:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2950,21 +2407,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3116:18:0", + "src": "2418:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 220, + "id": 176, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3116:25:0", + "referencedDeclaration": 82, + "src": "2418:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2986,18 +2443,18 @@ "typeString": "uint256" } ], - "id": 212, + "id": 168, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "3093:8:0", + "referencedDeclaration": 212, + "src": "2395:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 221, + "id": 177, "isConstant": false, "isLValue": false, "isPure": false, @@ -3005,20 +2462,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3093:49:0", + "src": "2395:49:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 222, + "id": 178, "nodeType": "ExpressionStatement", - "src": "3093:49:0" + "src": "2395:49:0" } ] }, "documentation": null, - "id": 224, + "id": 180, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -3026,73 +2483,20 @@ "name": "init", "nodeType": "FunctionDefinition", "parameters": { - "id": 109, + "id": 96, "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 106, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2313:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 105, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2313:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 108, - "name": "_founderName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2335:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 107, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2335:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2312:43:0" + "parameters": [], + "src": "1957:2:0" }, "payable": false, "returnParameters": { - "id": 110, + "id": 97, "nodeType": "ParameterList", "parameters": [], - "src": "2363:0:0" + "src": "1967:0:0" }, - "scope": 1194, - "src": "2299:975:0", + "scope": 1146, + "src": "1944:507:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -3100,21 +2504,21 @@ { "anonymous": false, "documentation": null, - "id": 230, + "id": 186, "name": "Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 229, + "id": 185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 226, + "id": 182, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3294:12:0", + "scope": 186, + "src": "2471:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3122,10 +2526,10 @@ "typeString": "address" }, "typeName": { - "id": 225, + "id": 181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:0", + "src": "2471:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3136,12 +2540,12 @@ }, { "constant": false, - "id": 228, + "id": 184, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3308:10:0", + "scope": 186, + "src": "2485:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3149,10 +2553,10 @@ "typeString": "uint256" }, "typeName": { - "id": 227, + "id": 183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3308:4:0", + "src": "2485:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3162,28 +2566,28 @@ "visibility": "internal" } ], - "src": "3293:26:0" + "src": "2470:26:0" }, - "src": "3280:40:0" + "src": "2457:40:0" }, { "anonymous": false, "documentation": null, - "id": 238, + "id": 194, "name": "Withdraw", "nodeType": "EventDefinition", "parameters": { - "id": 237, + "id": 193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 232, + "id": 188, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3340:12:0", + "scope": 194, + "src": "2517:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3191,10 +2595,10 @@ "typeString": "address" }, "typeName": { - "id": 231, + "id": 187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3340:7:0", + "src": "2517:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3205,12 +2609,12 @@ }, { "constant": false, - "id": 234, + "id": 190, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3354:10:0", + "scope": 194, + "src": "2531:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3218,10 +2622,10 @@ "typeString": "uint256" }, "typeName": { - "id": 233, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3354:4:0", + "src": "2531:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3232,12 +2636,12 @@ }, { "constant": false, - "id": 236, + "id": 192, "indexed": false, "name": "newTotalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3366:25:0", + "scope": 194, + "src": "2543:25:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3245,10 +2649,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 191, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3366:7:0", + "src": "2543:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3258,28 +2662,28 @@ "visibility": "internal" } ], - "src": "3339:53:0" + "src": "2516:53:0" }, - "src": "3325:68:0" + "src": "2502:68:0" }, { "anonymous": false, "documentation": null, - "id": 248, + "id": 204, "name": "TokenWithdraw", "nodeType": "EventDefinition", "parameters": { - "id": 247, + "id": 203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 196, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3418:12:0", + "scope": 204, + "src": "2595:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3287,10 +2691,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 195, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3418:7:0", + "src": "2595:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3301,12 +2705,12 @@ }, { "constant": false, - "id": 242, + "id": 198, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3432:10:0", + "scope": 204, + "src": "2609:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3314,10 +2718,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 197, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3432:4:0", + "src": "2609:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3328,12 +2732,12 @@ }, { "constant": false, - "id": 244, + "id": 200, "indexed": false, "name": "token", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3444:13:0", + "scope": 204, + "src": "2621:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3341,10 +2745,10 @@ "typeString": "address" }, "typeName": { - "id": 243, + "id": 199, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3444:7:0", + "src": "2621:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3355,12 +2759,12 @@ }, { "constant": false, - "id": 246, + "id": 202, "indexed": false, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3459:11:0", + "scope": 204, + "src": "2636:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3368,10 +2772,10 @@ "typeString": "uint256" }, "typeName": { - "id": 245, + "id": 201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3459:4:0", + "src": "2636:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3381,28 +2785,28 @@ "visibility": "internal" } ], - "src": "3417:54:0" + "src": "2594:54:0" }, - "src": "3398:74:0" + "src": "2575:74:0" }, { "anonymous": false, "documentation": null, - "id": 256, + "id": 212, "name": "AddShare", "nodeType": "EventDefinition", "parameters": { - "id": 255, + "id": 211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 250, + "id": 206, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3492:11:0", + "scope": 212, + "src": "2669:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3410,10 +2814,10 @@ "typeString": "address" }, "typeName": { - "id": 249, + "id": 205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "2669:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3424,12 +2828,12 @@ }, { "constant": false, - "id": 252, + "id": 208, "indexed": false, "name": "addedShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3505:19:0", + "scope": 212, + "src": "2682:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3437,10 +2841,10 @@ "typeString": "uint256" }, "typeName": { - "id": 251, + "id": 207, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3505:7:0", + "src": "2682:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3451,12 +2855,12 @@ }, { "constant": false, - "id": 254, + "id": 210, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3526:22:0", + "scope": 212, + "src": "2703:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3464,10 +2868,10 @@ "typeString": "uint256" }, "typeName": { - "id": 253, + "id": 209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3526:7:0", + "src": "2703:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3477,28 +2881,28 @@ "visibility": "internal" } ], - "src": "3491:58:0" + "src": "2668:58:0" }, - "src": "3477:73:0" + "src": "2654:73:0" }, { "anonymous": false, "documentation": null, - "id": 264, + "id": 220, "name": "RemoveShare", "nodeType": "EventDefinition", "parameters": { - "id": 263, + "id": 219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 258, + "id": 214, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3573:11:0", + "scope": 220, + "src": "2750:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3506,10 +2910,10 @@ "typeString": "address" }, "typeName": { - "id": 257, + "id": 213, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3573:7:0", + "src": "2750:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3520,12 +2924,12 @@ }, { "constant": false, - "id": 260, + "id": 216, "indexed": false, "name": "removedShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3586:21:0", + "scope": 220, + "src": "2763:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3533,10 +2937,10 @@ "typeString": "uint256" }, "typeName": { - "id": 259, + "id": 215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "2763:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3547,12 +2951,12 @@ }, { "constant": false, - "id": 262, + "id": 218, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3609:22:0", + "scope": 220, + "src": "2786:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3560,10 +2964,10 @@ "typeString": "uint256" }, "typeName": { - "id": 261, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3609:7:0", + "src": "2786:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3573,28 +2977,28 @@ "visibility": "internal" } ], - "src": "3572:60:0" + "src": "2749:60:0" }, - "src": "3555:78:0" + "src": "2732:78:0" }, { "anonymous": false, "documentation": null, - "id": 272, + "id": 228, "name": "ChangePrivilege", "nodeType": "EventDefinition", "parameters": { - "id": 271, + "id": 227, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 266, + "id": 222, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3660:11:0", + "scope": 228, + "src": "2837:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3602,10 +3006,10 @@ "typeString": "address" }, "typeName": { - "id": 265, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3660:7:0", + "src": "2837:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3616,12 +3020,12 @@ }, { "constant": false, - "id": 268, + "id": 224, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3673:13:0", + "scope": 228, + "src": "2850:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3629,10 +3033,10 @@ "typeString": "bool" }, "typeName": { - "id": 267, + "id": 223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3673:4:0", + "src": "2850:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3643,12 +3047,12 @@ }, { "constant": false, - "id": 270, + "id": 226, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3688:13:0", + "scope": 228, + "src": "2865:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3656,10 +3060,10 @@ "typeString": "bool" }, "typeName": { - "id": 269, + "id": 225, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3688:4:0", + "src": "2865:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3669,28 +3073,28 @@ "visibility": "internal" } ], - "src": "3659:43:0" + "src": "2836:43:0" }, - "src": "3638:65:0" + "src": "2815:65:0" }, { "anonymous": false, "documentation": null, - "id": 278, + "id": 234, "name": "ChangeContractName", "nodeType": "EventDefinition", "parameters": { - "id": 277, + "id": 233, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 274, + "id": 230, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3733:15:0", + "scope": 234, + "src": "2910:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3698,10 +3102,10 @@ "typeString": "string" }, "typeName": { - "id": 273, + "id": 229, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3733:6:0", + "src": "2910:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3712,12 +3116,12 @@ }, { "constant": false, - "id": 276, + "id": 232, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3750:15:0", + "scope": 234, + "src": "2927:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3725,10 +3129,10 @@ "typeString": "string" }, "typeName": { - "id": 275, + "id": 231, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3750:6:0", + "src": "2927:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3738,28 +3142,28 @@ "visibility": "internal" } ], - "src": "3732:34:0" + "src": "2909:34:0" }, - "src": "3708:59:0" + "src": "2885:59:0" }, { "anonymous": false, "documentation": null, - "id": 286, + "id": 242, "name": "ChangeMemberName", "nodeType": "EventDefinition", "parameters": { - "id": 285, + "id": 241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 280, + "id": 236, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3795:11:0", + "scope": 242, + "src": "2972:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3767,10 +3171,10 @@ "typeString": "address" }, "typeName": { - "id": 279, + "id": 235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3795:7:0", + "src": "2972:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3781,12 +3185,12 @@ }, { "constant": false, - "id": 282, + "id": 238, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3808:15:0", + "scope": 242, + "src": "2985:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3794,10 +3198,10 @@ "typeString": "string" }, "typeName": { - "id": 281, + "id": 237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3808:6:0", + "src": "2985:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3808,12 +3212,12 @@ }, { "constant": false, - "id": 284, + "id": 240, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3825:15:0", + "scope": 242, + "src": "3002:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3821,10 +3225,10 @@ "typeString": "string" }, "typeName": { - "id": 283, + "id": 239, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3825:6:0", + "src": "3002:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3834,28 +3238,28 @@ "visibility": "internal" } ], - "src": "3794:47:0" + "src": "2971:47:0" }, - "src": "3772:70:0" + "src": "2949:70:0" }, { "anonymous": false, "documentation": null, - "id": 294, + "id": 250, "name": "ChangeSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 293, + "id": 249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 244, "indexed": false, "name": "contractBalance", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3873:23:0", + "scope": 250, + "src": "3050:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3863,10 +3267,10 @@ "typeString": "uint256" }, "typeName": { - "id": 287, + "id": 243, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3873:7:0", + "src": "3050:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3877,12 +3281,12 @@ }, { "constant": false, - "id": 290, + "id": 246, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3898:16:0", + "scope": 250, + "src": "3075:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3890,10 +3294,10 @@ "typeString": "uint256" }, "typeName": { - "id": 289, + "id": 245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3898:7:0", + "src": "3075:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3904,12 +3308,12 @@ }, { "constant": false, - "id": 292, + "id": 248, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3916:16:0", + "scope": 250, + "src": "3093:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3917,10 +3321,10 @@ "typeString": "uint256" }, "typeName": { - "id": 291, + "id": 247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3916:7:0", + "src": "3093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3930,28 +3334,28 @@ "visibility": "internal" } ], - "src": "3872:61:0" + "src": "3049:61:0" }, - "src": "3847:87:0" + "src": "3024:87:0" }, { "anonymous": false, "documentation": null, - "id": 304, + "id": 260, "name": "WithdrawSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 303, + "id": 259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 296, + "id": 252, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3967:12:0", + "scope": 260, + "src": "3144:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3959,10 +3363,10 @@ "typeString": "address" }, "typeName": { - "id": 295, + "id": 251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3967:7:0", + "src": "3144:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3973,12 +3377,12 @@ }, { "constant": false, - "id": 298, + "id": 254, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3981:10:0", + "scope": 260, + "src": "3158:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3986,10 +3390,10 @@ "typeString": "address" }, "typeName": { - "id": 297, + "id": 253, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3981:7:0", + "src": "3158:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4000,12 +3404,12 @@ }, { "constant": false, - "id": 300, + "id": 256, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3993:10:0", + "scope": 260, + "src": "3170:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4013,10 +3417,10 @@ "typeString": "uint256" }, "typeName": { - "id": 299, + "id": 255, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3993:4:0", + "src": "3170:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4027,12 +3431,12 @@ }, { "constant": false, - "id": 302, + "id": 258, "indexed": false, "name": "newSharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "4005:33:0", + "scope": 260, + "src": "3182:33:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4040,10 +3444,10 @@ "typeString": "uint256" }, "typeName": { - "id": 301, + "id": 257, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4005:7:0", + "src": "3182:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4053,15 +3457,15 @@ "visibility": "internal" } ], - "src": "3966:73:0" + "src": "3143:73:0" }, - "src": "3939:101:0" + "src": "3116:101:0" }, { "body": { - "id": 314, + "id": 270, "nodeType": "Block", - "src": "4126:47:0", + "src": "3303:47:0", "statements": [ { "expression": { @@ -4071,18 +3475,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 308, + "id": 264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4144:3:0", + "referencedDeclaration": 1500, + "src": "3321:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 309, + "id": 265, "isConstant": false, "isLValue": false, "isPure": false, @@ -4090,7 +3494,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4144:10:0", + "src": "3321:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4100,18 +3504,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 310, + "id": 266, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4156:3:0", + "referencedDeclaration": 1500, + "src": "3333:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 311, + "id": 267, "isConstant": false, "isLValue": false, "isPure": false, @@ -4119,7 +3523,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4156:9:0", + "src": "3333:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4137,18 +3541,18 @@ "typeString": "uint256" } ], - "id": 307, + "id": 263, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 230, - "src": "4136:7:0", + "referencedDeclaration": 186, + "src": "3313:7:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 312, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -4156,20 +3560,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4136:30:0", + "src": "3313:30:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 313, + "id": 269, "nodeType": "ExpressionStatement", - "src": "4136:30:0" + "src": "3313:30:0" } ] }, "documentation": null, - "id": 315, + "id": 271, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4177,29 +3581,29 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 305, + "id": 261, "nodeType": "ParameterList", "parameters": [], - "src": "4108:2:0" + "src": "3285:2:0" }, "payable": true, "returnParameters": { - "id": 306, + "id": 262, "nodeType": "ParameterList", "parameters": [], - "src": "4126:0:0" + "src": "3303:0:0" }, - "scope": 1194, - "src": "4099:74:0", + "scope": 1146, + "src": "3276:74:0", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 333, + "id": 289, "nodeType": "Block", - "src": "4200:95:0", + "src": "3377:95:0", "statements": [ { "condition": { @@ -4208,7 +3612,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 327, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, @@ -4219,7 +3623,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 320, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -4228,18 +3632,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 317, + "id": 273, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4215:3:0", + "referencedDeclaration": 1500, + "src": "3392:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 318, + "id": 274, "isConstant": false, "isLValue": false, "isPure": false, @@ -4247,7 +3651,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4215:10:0", + "src": "3392:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4257,18 +3661,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 319, + "id": 275, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "4229:5:0", + "referencedDeclaration": 5, + "src": "3406:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4215:19:0", + "src": "3392:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4278,7 +3682,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 326, + "id": 282, "isConstant": false, "isLValue": false, "isPure": false, @@ -4286,41 +3690,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4238:26:0", + "src": "3415:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 321, + "id": 277, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4239:7:0", + "referencedDeclaration": 73, + "src": "3416:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 324, + "id": 280, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 322, + "id": 278, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4247:3:0", + "referencedDeclaration": 1500, + "src": "3424:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 323, + "id": 279, "isConstant": false, "isLValue": false, "isPure": false, @@ -4328,7 +3732,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4247:10:0", + "src": "3424:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4339,21 +3743,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4239:19:0", + "src": "3416:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 325, + "id": 281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "4239:25:0", + "referencedDeclaration": 80, + "src": "3416:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4364,37 +3768,37 @@ "typeString": "bool" } }, - "src": "4215:49:0", + "src": "3392:49:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 331, + "id": 287, "nodeType": "IfStatement", - "src": "4211:63:0", + "src": "3388:63:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 328, + "id": 284, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4266:6:0", + "referencedDeclaration": 1505, + "src": "3443:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 329, + "id": 285, "isConstant": false, "isLValue": false, "isPure": false, @@ -4402,47 +3806,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4266:8:0", + "src": "3443:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 330, + "id": 286, "nodeType": "ExpressionStatement", - "src": "4266:8:0" + "src": "3443:8:0" } }, { - "id": 332, + "id": 288, "nodeType": "PlaceholderStatement", - "src": "4287:1:0" + "src": "3464:1:0" } ] }, "documentation": null, - "id": 334, + "id": 290, "name": "onlyAdmin", "nodeType": "ModifierDefinition", "parameters": { - "id": 316, + "id": 272, "nodeType": "ParameterList", "parameters": [], - "src": "4197:2:0" + "src": "3374:2:0" }, - "src": "4179:116:0", + "src": "3356:116:0", "visibility": "internal" }, { "body": { - "id": 348, + "id": 304, "nodeType": "Block", - "src": "4336:64:0", + "src": "3513:64:0", "statements": [ { "condition": { "argumentTypes": null, - "id": 342, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -4450,33 +3854,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4351:20:0", + "src": "3528:20:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 338, + "id": 294, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4352:7:0", + "referencedDeclaration": 73, + "src": "3529:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 340, + "id": 296, "indexExpression": { "argumentTypes": null, - "id": 339, + "id": 295, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "4360:3:0", + "referencedDeclaration": 292, + "src": "3537:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4487,21 +3891,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4352:12:0", + "src": "3529:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 341, + "id": 297, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "4352:19:0", + "referencedDeclaration": 78, + "src": "3529:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4513,30 +3917,30 @@ } }, "falseBody": null, - "id": 346, + "id": 302, "nodeType": "IfStatement", - "src": "4347:34:0", + "src": "3524:34:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 343, + "id": 299, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4373:6:0", + "referencedDeclaration": 1505, + "src": "3550:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 344, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -4544,39 +3948,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4373:8:0", + "src": "3550:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 345, + "id": 301, "nodeType": "ExpressionStatement", - "src": "4373:8:0" + "src": "3550:8:0" } }, { - "id": 347, + "id": 303, "nodeType": "PlaceholderStatement", - "src": "4392:1:0" + "src": "3569:1:0" } ] }, "documentation": null, - "id": 349, + "id": 305, "name": "onlyExisting", "nodeType": "ModifierDefinition", "parameters": { - "id": 337, + "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 336, + "id": 292, "name": "who", "nodeType": "VariableDeclaration", - "scope": 349, - "src": "4323:11:0", + "scope": 305, + "src": "3500:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4584,10 +3988,10 @@ "typeString": "address" }, "typeName": { - "id": 335, + "id": 291, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4323:7:0", + "src": "3500:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4597,34 +4001,34 @@ "visibility": "internal" } ], - "src": "4322:13:0" + "src": "3499:13:0" }, - "src": "4301:99:0", + "src": "3478:99:0", "visibility": "internal" }, { "body": { - "id": 357, + "id": 313, "nodeType": "Block", - "src": "4514:41:0", + "src": "3691:41:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 354, + "id": 310, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4531:10:0", + "referencedDeclaration": 76, + "src": "3708:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 355, + "id": 311, "isConstant": false, "isLValue": true, "isPure": false, @@ -4632,21 +4036,21 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4531:17:0", + "src": "3708:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 353, - "id": 356, + "functionReturnParameters": 309, + "id": 312, "nodeType": "Return", - "src": "4524:24:0" + "src": "3701:24:0" } ] }, "documentation": null, - "id": 358, + "id": 314, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4654,23 +4058,23 @@ "name": "getMemberCount", "nodeType": "FunctionDefinition", "parameters": { - "id": 350, + "id": 306, "nodeType": "ParameterList", "parameters": [], - "src": "4481:2:0" + "src": "3658:2:0" }, "payable": false, "returnParameters": { - "id": 353, + "id": 309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 352, + "id": 308, "name": "", "nodeType": "VariableDeclaration", - "scope": 358, - "src": "4508:4:0", + "scope": 314, + "src": "3685:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4678,10 +4082,10 @@ "typeString": "uint256" }, "typeName": { - "id": 351, + "id": 307, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4508:4:0", + "src": "3685:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4691,45 +4095,45 @@ "visibility": "internal" } ], - "src": "4507:6:0" + "src": "3684:6:0" }, - "scope": 1194, - "src": "4458:97:0", + "scope": 1146, + "src": "3635:97:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 369, + "id": 325, "nodeType": "Block", - "src": "4632:39:0", + "src": "3809:39:0", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 321, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4649:10:0", + "referencedDeclaration": 76, + "src": "3826:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 367, + "id": 323, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 322, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "4660:3:0", + "referencedDeclaration": 316, + "src": "3837:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4740,21 +4144,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4649:15:0", + "src": "3826:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 364, - "id": 368, + "functionReturnParameters": 320, + "id": 324, "nodeType": "Return", - "src": "4642:22:0" + "src": "3819:22:0" } ] }, "documentation": null, - "id": 370, + "id": 326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4762,16 +4166,16 @@ "name": "getMemberAtKey", "nodeType": "FunctionDefinition", "parameters": { - "id": 361, + "id": 317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 360, + "id": 316, "name": "key", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4589:8:0", + "scope": 326, + "src": "3766:8:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4779,10 +4183,10 @@ "typeString": "uint256" }, "typeName": { - "id": 359, + "id": 315, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4589:4:0", + "src": "3766:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4792,20 +4196,20 @@ "visibility": "internal" } ], - "src": "4588:10:0" + "src": "3765:10:0" }, "payable": false, "returnParameters": { - "id": 364, + "id": 320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 363, + "id": 319, "name": "", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4623:7:0", + "scope": 326, + "src": "3800:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4813,10 +4217,10 @@ "typeString": "address" }, "typeName": { - "id": 362, + "id": 318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4623:7:0", + "src": "3800:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4826,37 +4230,37 @@ "visibility": "internal" } ], - "src": "4622:9:0" + "src": "3799:9:0" }, - "scope": 1194, - "src": "4565:106:0", + "scope": 1146, + "src": "3742:106:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 378, + "id": 334, "nodeType": "Block", - "src": "4744:36:0", + "src": "3921:36:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 375, + "id": 331, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "4761:4:0", + "referencedDeclaration": 1513, + "src": "3938:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 376, + "id": 332, "isConstant": false, "isLValue": false, "isPure": false, @@ -4864,21 +4268,21 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4761:12:0", + "src": "3938:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 374, - "id": 377, + "functionReturnParameters": 330, + "id": 333, "nodeType": "Return", - "src": "4754:19:0" + "src": "3931:19:0" } ] }, "documentation": null, - "id": 379, + "id": 335, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4886,23 +4290,23 @@ "name": "getBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 371, + "id": 327, "nodeType": "ParameterList", "parameters": [], - "src": "4700:2:0" + "src": "3877:2:0" }, "payable": false, "returnParameters": { - "id": 374, + "id": 330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 373, + "id": 329, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 379, - "src": "4727:15:0", + "scope": 335, + "src": "3904:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4910,10 +4314,10 @@ "typeString": "uint256" }, "typeName": { - "id": 372, + "id": 328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4727:7:0", + "src": "3904:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4923,19 +4327,19 @@ "visibility": "internal" } ], - "src": "4726:17:0" + "src": "3903:17:0" }, - "scope": 1194, - "src": "4681:99:0", + "scope": 1146, + "src": "3858:99:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 401, + "id": 357, "nodeType": "Block", - "src": "4945:94:0", + "src": "4122:94:0", "statements": [ { "expression": { @@ -4946,12 +4350,12 @@ "arguments": [ { "argumentTypes": null, - "id": 393, + "id": 349, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4970:4:0", + "referencedDeclaration": 338, + "src": "4147:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4965,20 +4369,20 @@ "typeString": "string memory" } ], - "id": 392, + "id": 348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4963:6:0", + "src": "4140:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": "string" }, - "id": 394, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -4986,7 +4390,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4963:12:0", + "src": "4140:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -4994,12 +4398,12 @@ }, { "argumentTypes": null, - "id": 395, + "id": 351, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4977:5:0", + "referencedDeclaration": 340, + "src": "4154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5007,12 +4411,12 @@ }, { "argumentTypes": null, - "id": 396, + "id": 352, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "4984:18:0", + "referencedDeclaration": 342, + "src": "4161:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5020,12 +4424,12 @@ }, { "argumentTypes": null, - "id": 397, + "id": 353, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "5004:11:0", + "referencedDeclaration": 344, + "src": "4181:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5033,40 +4437,40 @@ }, { "argumentTypes": null, - "id": 398, + "id": 354, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "5017:14:0", + "referencedDeclaration": 346, + "src": "4194:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 399, + "id": 355, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4962:70:0", + "src": "4139:70:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_string_memory_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(string memory,address,uint256,uint256,uint256)" } }, - "functionReturnParameters": 391, - "id": 400, + "functionReturnParameters": 347, + "id": 356, "nodeType": "Return", - "src": "4955:77:0" + "src": "4132:77:0" } ] }, "documentation": null, - "id": 402, + "id": 358, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5074,23 +4478,23 @@ "name": "getContractInfo", "nodeType": "FunctionDefinition", "parameters": { - "id": 380, + "id": 336, "nodeType": "ParameterList", "parameters": [], - "src": "4814:2:0" + "src": "3991:2:0" }, "payable": false, "returnParameters": { - "id": 391, + "id": 347, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 382, + "id": 338, "name": "name", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4841:11:0", + "scope": 358, + "src": "4018:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5098,10 +4502,10 @@ "typeString": "string" }, "typeName": { - "id": 381, + "id": 337, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4841:6:0", + "src": "4018:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5112,11 +4516,11 @@ }, { "constant": false, - "id": 384, + "id": 340, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4854:13:0", + "scope": 358, + "src": "4031:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5124,10 +4528,10 @@ "typeString": "address" }, "typeName": { - "id": 383, + "id": 339, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4854:7:0", + "src": "4031:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5138,11 +4542,11 @@ }, { "constant": false, - "id": 386, + "id": 342, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4870:26:0", + "scope": 358, + "src": "4047:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5150,10 +4554,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 341, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4870:7:0", + "src": "4047:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5164,11 +4568,11 @@ }, { "constant": false, - "id": 388, + "id": 344, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4899:19:0", + "scope": 358, + "src": "4076:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5176,10 +4580,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 343, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4899:7:0", + "src": "4076:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5190,11 +4594,11 @@ }, { "constant": false, - "id": 390, + "id": 346, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4921:22:0", + "scope": 358, + "src": "4098:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5202,10 +4606,10 @@ "typeString": "uint256" }, "typeName": { - "id": 389, + "id": 345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4921:7:0", + "src": "4098:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5215,47 +4619,47 @@ "visibility": "internal" } ], - "src": "4840:104:0" + "src": "4017:104:0" }, - "scope": 1194, - "src": "4790:249:0", + "scope": 1146, + "src": "3967:249:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 434, + "id": 390, "nodeType": "Block", - "src": "5202:111:0", + "src": "4379:111:0", "statements": [ { "assignments": [ - 419 + 375 ], "declarations": [ { "constant": false, - "id": 419, + "id": 375, "name": "m", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5210:15:0", + "scope": 391, + "src": "4387:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 418, + "id": 374, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5210:6:0", + "referencedDeclaration": 91, + "src": "4387:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -5263,31 +4667,31 @@ "visibility": "internal" } ], - "id": 423, + "id": 379, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 420, + "id": 376, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5228:7:0", + "referencedDeclaration": 73, + "src": "4405:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 422, + "id": 378, "indexExpression": { "argumentTypes": null, - "id": 421, + "id": 377, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5236:8:0", + "referencedDeclaration": 360, + "src": "4413:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5298,14 +4702,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5228:17:0", + "src": "4405:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5210:35:0" + "src": "4387:35:0" }, { "expression": { @@ -5315,26 +4719,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 424, + "id": 380, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5261:1:0", + "referencedDeclaration": 375, + "src": "4438:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 425, + "id": 381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5261:7:0", + "referencedDeclaration": 80, + "src": "4438:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5344,26 +4748,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 426, + "id": 382, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5270:1:0", + "referencedDeclaration": 375, + "src": "4447:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 427, + "id": 383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5270:8:0", + "referencedDeclaration": 82, + "src": "4447:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5373,26 +4777,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 428, + "id": 384, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5280:1:0", + "referencedDeclaration": 375, + "src": "4457:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 429, + "id": 385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5280:11:0", + "referencedDeclaration": 84, + "src": "4457:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5402,54 +4806,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 430, + "id": 386, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5293:1:0", + "referencedDeclaration": 375, + "src": "4470:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 431, + "id": 387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "5293:12:0", + "referencedDeclaration": 86, + "src": "4470:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } } ], - "id": 432, + "id": 388, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5260:46:0", + "src": "4437:46:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$_t_uint256_$_t_string_memory_$", "typeString": "tuple(bool,uint256,uint256,string memory)" } }, - "functionReturnParameters": 417, - "id": 433, + "functionReturnParameters": 373, + "id": 389, "nodeType": "Return", - "src": "5253:53:0" + "src": "4430:53:0" } ] }, "documentation": null, - "id": 435, + "id": 391, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5458,49 +4862,49 @@ "arguments": [ { "argumentTypes": null, - "id": 407, + "id": 363, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5118:8:0", + "referencedDeclaration": 360, + "src": "4295:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 408, + "id": 364, "modifierName": { "argumentTypes": null, - "id": 406, + "id": 362, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5105:12:0", + "referencedDeclaration": 305, + "src": "4282:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "5105:22:0" + "src": "4282:22:0" } ], "name": "returnMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 405, + "id": 361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 404, + "id": 360, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5071:16:0", + "scope": 391, + "src": "4248:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5508,10 +4912,10 @@ "typeString": "address" }, "typeName": { - "id": 403, + "id": 359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5071:7:0", + "src": "4248:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5521,20 +4925,20 @@ "visibility": "internal" } ], - "src": "5070:18:0" + "src": "4247:18:0" }, "payable": false, "returnParameters": { - "id": 417, + "id": 373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 410, + "id": 366, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5136:10:0", + "scope": 391, + "src": "4313:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5542,10 +4946,10 @@ "typeString": "bool" }, "typeName": { - "id": 409, + "id": 365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5136:4:0", + "src": "4313:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5556,11 +4960,11 @@ }, { "constant": false, - "id": 412, + "id": 368, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5148:14:0", + "scope": 391, + "src": "4325:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5568,10 +4972,10 @@ "typeString": "uint256" }, "typeName": { - "id": 411, + "id": 367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5148:7:0", + "src": "4325:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5582,11 +4986,11 @@ }, { "constant": false, - "id": 414, + "id": 370, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5164:17:0", + "scope": 391, + "src": "4341:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5594,10 +4998,10 @@ "typeString": "uint256" }, "typeName": { - "id": 413, + "id": 369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5164:7:0", + "src": "4341:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5608,11 +5012,11 @@ }, { "constant": false, - "id": 416, + "id": 372, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5183:17:0", + "scope": 391, + "src": "4360:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5620,10 +5024,10 @@ "typeString": "string" }, "typeName": { - "id": 415, + "id": 371, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5183:6:0", + "src": "4360:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5633,19 +5037,19 @@ "visibility": "internal" } ], - "src": "5135:66:0" + "src": "4312:66:0" }, - "scope": 1194, - "src": "5049:264:0", + "scope": 1146, + "src": "4226:264:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 451, + "id": 407, "nodeType": "Block", - "src": "5394:200:0", + "src": "4571:61:0", "statements": [ { "expression": { @@ -5656,14 +5060,14 @@ "arguments": [ { "argumentTypes": null, - "id": 447, + "id": 403, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "5442:4:0", + "referencedDeclaration": 1513, + "src": "4619:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } } @@ -5671,24 +5075,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } ], - "id": 446, + "id": 402, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5434:7:0", + "src": "4611:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 448, + "id": 404, "isConstant": false, "isLValue": false, "isPure": false, @@ -5696,7 +5100,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5434:13:0", + "src": "4611:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5715,12 +5119,12 @@ "arguments": [ { "argumentTypes": null, - "id": 443, + "id": 399, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "5417:5:0", + "referencedDeclaration": 393, + "src": "4594:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5734,18 +5138,18 @@ "typeString": "address" } ], - "id": 442, + "id": 398, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "5411:5:0", + "referencedDeclaration": 1213, + "src": "4588:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 444, + "id": 400, "isConstant": false, "isLValue": false, "isPure": false, @@ -5753,27 +5157,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:12:0", + "src": "4588:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 445, + "id": 401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1203, - "src": "5411:22:0", + "referencedDeclaration": 1155, + "src": "4588:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 449, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -5781,21 +5185,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:37:0", + "src": "4588:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 441, - "id": 450, + "functionReturnParameters": 397, + "id": 406, "nodeType": "Return", - "src": "5404:44:0" + "src": "4581:44:0" } ] }, "documentation": null, - "id": 452, + "id": 408, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5803,16 +5207,16 @@ "name": "checkERC20Balance", "nodeType": "FunctionDefinition", "parameters": { - "id": 438, + "id": 394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 437, + "id": 393, "name": "token", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5346:13:0", + "scope": 408, + "src": "4523:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5820,10 +5224,10 @@ "typeString": "address" }, "typeName": { - "id": 436, + "id": 392, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5346:7:0", + "src": "4523:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5833,20 +5237,20 @@ "visibility": "internal" } ], - "src": "5345:15:0" + "src": "4522:15:0" }, "payable": false, "returnParameters": { - "id": 441, + "id": 397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 440, + "id": 396, "name": "", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5385:7:0", + "scope": 408, + "src": "4562:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5854,10 +5258,10 @@ "typeString": "uint256" }, "typeName": { - "id": 439, + "id": 395, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5385:7:0", + "src": "4562:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5867,19 +5271,19 @@ "visibility": "internal" } ], - "src": "5384:9:0" + "src": "4561:9:0" }, - "scope": 1194, - "src": "5319:275:0", + "scope": 1146, + "src": "4496:136:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 521, + "id": 477, "nodeType": "Block", - "src": "5746:399:0", + "src": "4784:399:0", "statements": [ { "condition": { @@ -5888,26 +5292,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 465, + "id": 421, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5817:7:0", + "referencedDeclaration": 73, + "src": "4855:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 467, + "id": 423, "indexExpression": { "argumentTypes": null, - "id": 466, + "id": 422, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "5825:3:0", + "referencedDeclaration": 410, + "src": "4863:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5918,51 +5322,51 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5817:12:0", + "src": "4855:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 468, + "id": 424, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5817:19:0", + "referencedDeclaration": 78, + "src": "4855:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 472, + "id": 428, "nodeType": "IfStatement", - "src": "5813:33:0", + "src": "4851:33:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 469, + "id": 425, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5838:6:0", + "referencedDeclaration": 1505, + "src": "4876:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 470, + "id": 426, "isConstant": false, "isLValue": false, "isPure": false, @@ -5970,15 +5374,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5838:8:0", + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 427, "nodeType": "ExpressionStatement", - "src": "5838:8:0" + "src": "4876:8:0" } }, { @@ -5988,7 +5392,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 478, + "id": 434, "isConstant": false, "isLValue": false, "isPure": false, @@ -6000,12 +5404,12 @@ "arguments": [ { "argumentTypes": null, - "id": 474, + "id": 430, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "5866:10:0", + "referencedDeclaration": 416, + "src": "4904:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6019,20 +5423,20 @@ "typeString": "string memory" } ], - "id": 473, + "id": 429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5860:5:0", + "src": "4898:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 475, + "id": 431, "isConstant": false, "isLValue": false, "isPure": false, @@ -6040,13 +5444,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5860:17:0", + "src": "4898:17:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 476, + "id": 432, "isConstant": false, "isLValue": false, "isPure": false, @@ -6054,7 +5458,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5860:24:0", + "src": "4898:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6065,14 +5469,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 477, + "id": 433, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5887:2:0", + "src": "4925:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -6080,37 +5484,37 @@ }, "value": "21" }, - "src": "5860:29:0", + "src": "4898:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 482, + "id": 438, "nodeType": "IfStatement", - "src": "5856:43:0", + "src": "4894:43:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 479, + "id": 435, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5891:6:0", + "referencedDeclaration": 1505, + "src": "4929:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 480, + "id": 436, "isConstant": false, "isLValue": false, "isPure": false, @@ -6118,15 +5522,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5891:8:0", + "src": "4929:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 481, + "id": 437, "nodeType": "ExpressionStatement", - "src": "5891:8:0" + "src": "4929:8:0" } }, { @@ -6134,26 +5538,26 @@ "declarations": [ { "constant": false, - "id": 484, + "id": 440, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5910:23:0", + "scope": 478, + "src": "4948:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 483, + "id": 439, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5910:6:0", + "referencedDeclaration": 91, + "src": "4948:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -6161,15 +5565,15 @@ "visibility": "internal" } ], - "id": 485, + "id": 441, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "5910:23:0" + "src": "4948:23:0" }, { "expression": { "argumentTypes": null, - "id": 490, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -6178,26 +5582,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 486, + "id": 442, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5943:9:0", + "referencedDeclaration": 440, + "src": "4981:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 488, + "id": 444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5943:16:0", + "referencedDeclaration": 78, + "src": "4981:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6208,14 +5612,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 489, + "id": 445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5962:4:0", + "src": "5000:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6223,20 +5627,20 @@ }, "value": "true" }, - "src": "5943:23:0", + "src": "4981:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 491, + "id": 447, "nodeType": "ExpressionStatement", - "src": "5943:23:0" + "src": "4981:23:0" }, { "expression": { "argumentTypes": null, - "id": 496, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -6245,26 +5649,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 492, + "id": 448, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5976:9:0", + "referencedDeclaration": 440, + "src": "5014:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 494, + "id": 450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5976:15:0", + "referencedDeclaration": 80, + "src": "5014:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6274,31 +5678,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 495, + "id": 451, "name": "admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "5994:5:0", + "referencedDeclaration": 414, + "src": "5032:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5976:23:0", + "src": "5014:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 497, + "id": 453, "nodeType": "ExpressionStatement", - "src": "5976:23:0" + "src": "5014:23:0" }, { "expression": { "argumentTypes": null, - "id": 502, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, @@ -6307,26 +5711,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 498, + "id": 454, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6009:9:0", + "referencedDeclaration": 440, + "src": "5047:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 500, + "id": 456, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6009:20:0", + "referencedDeclaration": 86, + "src": "5047:20:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -6336,31 +5740,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 501, + "id": 457, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6032:10:0", + "referencedDeclaration": 416, + "src": "5070:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6009:33:0", + "src": "5047:33:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, - "id": 503, + "id": 459, "nodeType": "ExpressionStatement", - "src": "6009:33:0" + "src": "5047:33:0" }, { "expression": { "argumentTypes": null, - "id": 508, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -6369,26 +5773,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 504, + "id": 460, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6053:7:0", + "referencedDeclaration": 73, + "src": "5091:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 506, + "id": 462, "indexExpression": { "argumentTypes": null, - "id": 505, + "id": 461, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6061:3:0", + "referencedDeclaration": 410, + "src": "5099:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6399,9 +5803,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6053:12:0", + "src": "5091:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -6409,26 +5813,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 507, + "id": 463, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6068:9:0", + "referencedDeclaration": 440, + "src": "5106:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "6053:24:0", + "src": "5091:24:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 509, + "id": 465, "nodeType": "ExpressionStatement", - "src": "6053:24:0" + "src": "5091:24:0" }, { "expression": { @@ -6436,12 +5840,12 @@ "arguments": [ { "argumentTypes": null, - "id": 513, + "id": 469, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6103:3:0", + "referencedDeclaration": 410, + "src": "5141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6457,18 +5861,18 @@ ], "expression": { "argumentTypes": null, - "id": 510, + "id": 466, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "6087:10:0", + "referencedDeclaration": 76, + "src": "5125:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 512, + "id": 468, "isConstant": false, "isLValue": false, "isPure": false, @@ -6476,13 +5880,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6087:15:0", + "src": "5125:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 514, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, @@ -6490,15 +5894,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:20:0", + "src": "5125:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 515, + "id": 471, "nodeType": "ExpressionStatement", - "src": "6087:20:0" + "src": "5125:20:0" }, { "expression": { @@ -6506,12 +5910,12 @@ "arguments": [ { "argumentTypes": null, - "id": 517, + "id": 473, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6126:3:0", + "referencedDeclaration": 410, + "src": "5164:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6519,12 +5923,12 @@ }, { "argumentTypes": null, - "id": 518, + "id": 474, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "6131:6:0", + "referencedDeclaration": 412, + "src": "5169:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6542,18 +5946,18 @@ "typeString": "uint256" } ], - "id": 516, + "id": 472, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "6117:8:0", + "referencedDeclaration": 770, + "src": "5155:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 519, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -6561,57 +5965,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:21:0", + "src": "5155:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6117:21:0" + "src": "5155:21:0" } ] }, "documentation": null, - "id": 522, + "id": 478, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 463, + "id": 419, "modifierName": { "argumentTypes": null, - "id": 462, + "id": 418, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "5734:9:0", + "referencedDeclaration": 290, + "src": "4772:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "5734:11:0" + "src": "4772:11:0" } ], "name": "addMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 454, + "id": 410, "name": "who", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5667:11:0", + "scope": 478, + "src": "4705:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6619,10 +6023,10 @@ "typeString": "address" }, "typeName": { - "id": 453, + "id": 409, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5667:7:0", + "src": "4705:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6633,11 +6037,11 @@ }, { "constant": false, - "id": 456, + "id": 412, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5680:14:0", + "scope": 478, + "src": "4718:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6645,10 +6049,10 @@ "typeString": "uint256" }, "typeName": { - "id": 455, + "id": 411, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5680:7:0", + "src": "4718:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6659,11 +6063,11 @@ }, { "constant": false, - "id": 458, + "id": 414, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5696:10:0", + "scope": 478, + "src": "4734:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6671,10 +6075,10 @@ "typeString": "bool" }, "typeName": { - "id": 457, + "id": 413, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5696:4:0", + "src": "4734:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6685,11 +6089,11 @@ }, { "constant": false, - "id": 460, + "id": 416, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5708:17:0", + "scope": 478, + "src": "4746:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6697,10 +6101,10 @@ "typeString": "string" }, "typeName": { - "id": 459, + "id": 415, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5708:6:0", + "src": "4746:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6710,26 +6114,26 @@ "visibility": "internal" } ], - "src": "5666:60:0" + "src": "4704:60:0" }, "payable": false, "returnParameters": { - "id": 464, + "id": 420, "nodeType": "ParameterList", "parameters": [], - "src": "5746:0:0" + "src": "4784:0:0" }, - "scope": 1194, - "src": "5648:497:0", + "scope": 1146, + "src": "4686:497:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 575, + "id": 531, "nodeType": "Block", - "src": "6248:244:0", + "src": "5286:244:0", "statements": [ { "condition": { @@ -6738,7 +6142,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 544, + "id": 500, "isConstant": false, "isLValue": false, "isPure": false, @@ -6752,26 +6156,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 536, + "id": 492, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6267:7:0", + "referencedDeclaration": 73, + "src": "5305:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 538, + "id": 494, "indexExpression": { "argumentTypes": null, - "id": 537, + "id": 493, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6275:3:0", + "referencedDeclaration": 480, + "src": "5313:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6782,21 +6186,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6267:12:0", + "src": "5305:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 539, + "id": 495, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6267:23:0", + "referencedDeclaration": 86, + "src": "5305:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -6810,18 +6214,18 @@ "typeString": "string storage ref" } ], - "id": 535, + "id": 491, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6262:4:0", + "referencedDeclaration": 1510, + "src": "5300:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 540, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -6829,7 +6233,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6262:29:0", + "src": "5300:29:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6842,12 +6246,12 @@ "arguments": [ { "argumentTypes": null, - "id": 542, + "id": 498, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6300:4:0", + "referencedDeclaration": 486, + "src": "5338:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6861,18 +6265,18 @@ "typeString": "string memory" } ], - "id": 541, + "id": 497, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6295:4:0", + "referencedDeclaration": 1510, + "src": "5333:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 543, + "id": 499, "isConstant": false, "isLValue": false, "isPure": false, @@ -6880,34 +6284,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6295:10:0", + "src": "5333:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6262:43:0", + "src": "5300:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 550, + "id": 506, "nodeType": "IfStatement", - "src": "6258:76:0", + "src": "5296:76:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 502, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6324:3:0", + "referencedDeclaration": 480, + "src": "5362:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6915,12 +6319,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 503, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6329:4:0", + "referencedDeclaration": 486, + "src": "5367:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6938,18 +6342,18 @@ "typeString": "string memory" } ], - "id": 545, + "id": 501, "name": "changeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6307:16:0", + "referencedDeclaration": 589, + "src": "5345:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory)" } }, - "id": 548, + "id": 504, "isConstant": false, "isLValue": false, "isPure": false, @@ -6957,15 +6361,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6307:27:0", + "src": "5345:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 549, + "id": 505, "nodeType": "ExpressionStatement", - "src": "6307:27:0" + "src": "5345:27:0" } }, { @@ -6975,7 +6379,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 556, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, @@ -6986,26 +6390,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 551, + "id": 507, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6348:7:0", + "referencedDeclaration": 73, + "src": "5386:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 553, + "id": 509, "indexExpression": { "argumentTypes": null, - "id": 552, + "id": 508, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6356:3:0", + "referencedDeclaration": 480, + "src": "5394:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7016,21 +6420,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6348:12:0", + "src": "5386:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 554, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6348:18:0", + "referencedDeclaration": 80, + "src": "5386:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7040,39 +6444,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 555, + "id": 511, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6370:7:0", + "referencedDeclaration": 484, + "src": "5408:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6348:29:0", + "src": "5386:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 562, + "id": 518, "nodeType": "IfStatement", - "src": "6344:69:0", + "src": "5382:69:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 558, + "id": 514, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6400:3:0", + "referencedDeclaration": 480, + "src": "5438:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7080,12 +6484,12 @@ }, { "argumentTypes": null, - "id": 559, + "id": 515, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6405:7:0", + "referencedDeclaration": 484, + "src": "5443:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7103,18 +6507,18 @@ "typeString": "bool" } ], - "id": 557, + "id": 513, "name": "changeAdminPrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "6379:20:0", + "referencedDeclaration": 615, + "src": "5417:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,bool)" } }, - "id": 560, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, @@ -7122,15 +6526,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6379:34:0", + "src": "5417:34:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 561, + "id": 517, "nodeType": "ExpressionStatement", - "src": "6379:34:0" + "src": "5417:34:0" } }, { @@ -7140,7 +6544,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 568, + "id": 524, "isConstant": false, "isLValue": false, "isPure": false, @@ -7151,26 +6555,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 563, + "id": 519, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6427:7:0", + "referencedDeclaration": 73, + "src": "5465:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 565, + "id": 521, "indexExpression": { "argumentTypes": null, - "id": 564, + "id": 520, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6435:3:0", + "referencedDeclaration": 480, + "src": "5473:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7181,21 +6585,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6427:12:0", + "src": "5465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 566, + "id": 522, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6427:19:0", + "referencedDeclaration": 82, + "src": "5465:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7205,39 +6609,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 567, + "id": 523, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6450:6:0", + "referencedDeclaration": 482, + "src": "5488:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6427:29:0", + "src": "5465:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 574, + "id": 530, "nodeType": "IfStatement", - "src": "6423:62:0", + "src": "5461:62:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 570, + "id": 526, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6473:3:0", + "referencedDeclaration": 480, + "src": "5511:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7245,12 +6649,12 @@ }, { "argumentTypes": null, - "id": 571, + "id": 527, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6478:6:0", + "referencedDeclaration": 482, + "src": "5516:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7268,18 +6672,18 @@ "typeString": "uint256" } ], - "id": 569, + "id": 525, "name": "allocateShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 772, - "src": "6458:14:0", + "referencedDeclaration": 728, + "src": "5496:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 572, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -7287,58 +6691,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6458:27:0", + "src": "5496:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 573, + "id": 529, "nodeType": "ExpressionStatement", - "src": "6458:27:0" + "src": "5496:27:0" } } ] }, "documentation": null, - "id": 576, + "id": 532, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 533, + "id": 489, "modifierName": { "argumentTypes": null, - "id": 532, + "id": 488, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6236:9:0", + "referencedDeclaration": 290, + "src": "5274:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6236:11:0" + "src": "5274:11:0" } ], "name": "updateMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 524, + "id": 480, "name": "who", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6173:11:0", + "scope": 532, + "src": "5211:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7346,10 +6750,10 @@ "typeString": "address" }, "typeName": { - "id": 523, + "id": 479, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6173:7:0", + "src": "5211:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7360,11 +6764,11 @@ }, { "constant": false, - "id": 526, + "id": 482, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6186:14:0", + "scope": 532, + "src": "5224:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7372,10 +6776,10 @@ "typeString": "uint256" }, "typeName": { - "id": 525, + "id": 481, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6186:7:0", + "src": "5224:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7386,11 +6790,11 @@ }, { "constant": false, - "id": 528, + "id": 484, "name": "isAdmin", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6202:12:0", + "scope": 532, + "src": "5240:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7398,10 +6802,10 @@ "typeString": "bool" }, "typeName": { - "id": 527, + "id": 483, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6202:4:0", + "src": "5240:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7412,11 +6816,11 @@ }, { "constant": false, - "id": 530, + "id": 486, "name": "name", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6216:11:0", + "scope": 532, + "src": "5254:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7424,10 +6828,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 485, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6216:6:0", + "src": "5254:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7437,26 +6841,26 @@ "visibility": "internal" } ], - "src": "6172:56:0" + "src": "5210:56:0" }, "payable": false, "returnParameters": { - "id": 534, + "id": 490, "nodeType": "ParameterList", "parameters": [], - "src": "6248:0:0" + "src": "5286:0:0" }, - "scope": 1194, - "src": "6151:341:0", + "scope": 1146, + "src": "5189:341:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 632, + "id": 588, "nodeType": "Block", - "src": "6638:259:0", + "src": "5676:259:0", "statements": [ { "condition": { @@ -7465,7 +6869,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 601, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, @@ -7476,7 +6880,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 594, + "id": 550, "isConstant": false, "isLValue": false, "isPure": false, @@ -7487,7 +6891,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 589, + "id": 545, "isConstant": false, "isLValue": false, "isPure": false, @@ -7496,18 +6900,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 586, + "id": 542, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6652:3:0", + "referencedDeclaration": 1500, + "src": "5690:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 587, + "id": 543, "isConstant": false, "isLValue": false, "isPure": false, @@ -7515,7 +6919,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6652:10:0", + "src": "5690:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7525,18 +6929,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 588, + "id": 544, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6666:3:0", + "referencedDeclaration": 534, + "src": "5704:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6652:17:0", + "src": "5690:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7550,7 +6954,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 593, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -7559,18 +6963,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 590, + "id": 546, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6673:3:0", + "referencedDeclaration": 1500, + "src": "5711:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 591, + "id": 547, "isConstant": false, "isLValue": false, "isPure": false, @@ -7578,7 +6982,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6673:10:0", + "src": "5711:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7588,24 +6992,24 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 592, + "id": 548, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "6687:5:0", + "referencedDeclaration": 5, + "src": "5725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6673:19:0", + "src": "5711:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6652:40:0", + "src": "5690:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7615,7 +7019,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 600, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, @@ -7623,41 +7027,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6696:26:0", + "src": "5734:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 595, + "id": 551, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6697:7:0", + "referencedDeclaration": 73, + "src": "5735:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 598, + "id": 554, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 596, + "id": 552, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6705:3:0", + "referencedDeclaration": 1500, + "src": "5743:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 597, + "id": 553, "isConstant": false, "isLValue": false, "isPure": false, @@ -7665,7 +7069,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6705:10:0", + "src": "5743:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7676,21 +7080,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6697:19:0", + "src": "5735:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 599, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6697:25:0", + "referencedDeclaration": 80, + "src": "5735:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7701,37 +7105,37 @@ "typeString": "bool" } }, - "src": "6652:70:0", + "src": "5690:70:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 605, + "id": 561, "nodeType": "IfStatement", - "src": "6648:84:0", + "src": "5686:84:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 602, + "id": 558, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6724:6:0", + "referencedDeclaration": 1505, + "src": "5762:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 603, + "id": 559, "isConstant": false, "isLValue": false, "isPure": false, @@ -7739,15 +7143,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6724:8:0", + "src": "5762:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 604, + "id": 560, "nodeType": "ExpressionStatement", - "src": "6724:8:0" + "src": "5762:8:0" } }, { @@ -7757,7 +7161,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 611, + "id": 567, "isConstant": false, "isLValue": false, "isPure": false, @@ -7769,12 +7173,12 @@ "arguments": [ { "argumentTypes": null, - "id": 607, + "id": 563, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6752:7:0", + "referencedDeclaration": 536, + "src": "5790:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7788,20 +7192,20 @@ "typeString": "string memory" } ], - "id": 606, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6746:5:0", + "src": "5784:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 608, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, @@ -7809,13 +7213,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6746:14:0", + "src": "5784:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 609, + "id": 565, "isConstant": false, "isLValue": false, "isPure": false, @@ -7823,7 +7227,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6746:21:0", + "src": "5784:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7834,14 +7238,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 610, + "id": 566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6770:2:0", + "src": "5808:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -7849,37 +7253,37 @@ }, "value": "21" }, - "src": "6746:26:0", + "src": "5784:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 615, + "id": 571, "nodeType": "IfStatement", - "src": "6742:40:0", + "src": "5780:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 612, + "id": 568, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6774:6:0", + "referencedDeclaration": 1505, + "src": "5812:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 613, + "id": 569, "isConstant": false, "isLValue": false, "isPure": false, @@ -7887,15 +7291,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6774:8:0", + "src": "5812:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 614, + "id": 570, "nodeType": "ExpressionStatement", - "src": "6774:8:0" + "src": "5812:8:0" } }, { @@ -7904,12 +7308,12 @@ "arguments": [ { "argumentTypes": null, - "id": 617, + "id": 573, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6809:3:0", + "referencedDeclaration": 534, + "src": "5847:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7921,26 +7325,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 618, + "id": 574, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6814:7:0", + "referencedDeclaration": 73, + "src": "5852:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 620, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 619, + "id": 575, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6822:3:0", + "referencedDeclaration": 534, + "src": "5860:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7951,21 +7355,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6814:12:0", + "src": "5852:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 621, + "id": 577, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6814:23:0", + "referencedDeclaration": 86, + "src": "5852:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7973,12 +7377,12 @@ }, { "argumentTypes": null, - "id": 622, + "id": 578, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6839:7:0", + "referencedDeclaration": 536, + "src": "5877:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8000,18 +7404,18 @@ "typeString": "string memory" } ], - "id": 616, + "id": 572, "name": "ChangeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "6792:16:0", + "referencedDeclaration": 242, + "src": "5830:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 623, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, @@ -8019,20 +7423,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6792:55:0", + "src": "5830:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 624, + "id": 580, "nodeType": "ExpressionStatement", - "src": "6792:55:0" + "src": "5830:55:0" }, { "expression": { "argumentTypes": null, - "id": 630, + "id": 586, "isConstant": false, "isLValue": false, "isPure": false, @@ -8043,26 +7447,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 625, + "id": 581, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6857:7:0", + "referencedDeclaration": 73, + "src": "5895:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 627, + "id": 583, "indexExpression": { "argumentTypes": null, - "id": 626, + "id": 582, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6865:3:0", + "referencedDeclaration": 534, + "src": "5903:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8073,21 +7477,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6857:12:0", + "src": "5895:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 628, + "id": 584, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6857:23:0", + "referencedDeclaration": 86, + "src": "5895:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8097,31 +7501,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 629, + "id": 585, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6883:7:0", + "referencedDeclaration": 536, + "src": "5921:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6857:33:0", + "src": "5895:33:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 631, + "id": 587, "nodeType": "ExpressionStatement", - "src": "6857:33:0" + "src": "5895:33:0" } ] }, "documentation": null, - "id": 633, + "id": 589, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -8130,49 +7534,49 @@ "arguments": [ { "argumentTypes": null, - "id": 583, + "id": 539, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6633:3:0", + "referencedDeclaration": 534, + "src": "5671:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 584, + "id": 540, "modifierName": { "argumentTypes": null, - "id": 582, + "id": 538, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "6620:12:0", + "referencedDeclaration": 305, + "src": "5658:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6620:17:0" + "src": "5658:17:0" } ], "name": "changeMemberName", "nodeType": "FunctionDefinition", "parameters": { - "id": 581, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 578, + "id": 534, "name": "who", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6584:11:0", + "scope": 589, + "src": "5622:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8180,10 +7584,10 @@ "typeString": "address" }, "typeName": { - "id": 577, + "id": 533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6584:7:0", + "src": "5622:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8194,11 +7598,11 @@ }, { "constant": false, - "id": 580, + "id": 536, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6597:14:0", + "scope": 589, + "src": "5635:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8206,10 +7610,10 @@ "typeString": "string" }, "typeName": { - "id": 579, + "id": 535, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6597:6:0", + "src": "5635:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8219,26 +7623,26 @@ "visibility": "internal" } ], - "src": "6583:29:0" + "src": "5621:29:0" }, "payable": false, "returnParameters": { - "id": 585, + "id": 541, "nodeType": "ParameterList", "parameters": [], - "src": "6638:0:0" + "src": "5676:0:0" }, - "scope": 1194, - "src": "6558:339:0", + "scope": 1146, + "src": "5596:339:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 658, + "id": 614, "nodeType": "Block", - "src": "6980:107:0", + "src": "6018:107:0", "statements": [ { "expression": { @@ -8246,12 +7650,12 @@ "arguments": [ { "argumentTypes": null, - "id": 643, + "id": 599, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7006:3:0", + "referencedDeclaration": 591, + "src": "6044:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8263,26 +7667,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 644, + "id": 600, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7011:7:0", + "referencedDeclaration": 73, + "src": "6049:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 646, + "id": 602, "indexExpression": { "argumentTypes": null, - "id": 645, + "id": 601, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7019:3:0", + "referencedDeclaration": 591, + "src": "6057:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8293,21 +7697,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7011:12:0", + "src": "6049:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 647, + "id": 603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7011:18:0", + "referencedDeclaration": 80, + "src": "6049:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8315,12 +7719,12 @@ }, { "argumentTypes": null, - "id": 648, + "id": 604, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7031:8:0", + "referencedDeclaration": 593, + "src": "6069:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8342,18 +7746,18 @@ "typeString": "bool" } ], - "id": 642, + "id": 598, "name": "ChangePrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 272, - "src": "6990:15:0", + "referencedDeclaration": 228, + "src": "6028:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,bool,bool)" } }, - "id": 649, + "id": 605, "isConstant": false, "isLValue": false, "isPure": false, @@ -8361,20 +7765,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6990:50:0", + "src": "6028:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 650, + "id": 606, "nodeType": "ExpressionStatement", - "src": "6990:50:0" + "src": "6028:50:0" }, { "expression": { "argumentTypes": null, - "id": 656, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, @@ -8385,26 +7789,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 651, + "id": 607, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7050:7:0", + "referencedDeclaration": 73, + "src": "6088:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 653, + "id": 609, "indexExpression": { "argumentTypes": null, - "id": 652, + "id": 608, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7058:3:0", + "referencedDeclaration": 591, + "src": "6096:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8415,21 +7819,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7050:12:0", + "src": "6088:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 654, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7050:18:0", + "referencedDeclaration": 80, + "src": "6088:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8439,68 +7843,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 655, + "id": 611, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7071:8:0", + "referencedDeclaration": 593, + "src": "6109:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7050:29:0", + "src": "6088:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 657, + "id": 613, "nodeType": "ExpressionStatement", - "src": "7050:29:0" + "src": "6088:29:0" } ] }, "documentation": null, - "id": 659, + "id": 615, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 640, + "id": 596, "modifierName": { "argumentTypes": null, - "id": 639, + "id": 595, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6968:9:0", + "referencedDeclaration": 290, + "src": "6006:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6968:11:0" + "src": "6006:11:0" } ], "name": "changeAdminPrivilege", "nodeType": "FunctionDefinition", "parameters": { - "id": 638, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 635, + "id": 591, "name": "who", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6933:11:0", + "scope": 615, + "src": "5971:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8508,10 +7912,10 @@ "typeString": "address" }, "typeName": { - "id": 634, + "id": 590, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6933:7:0", + "src": "5971:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8522,11 +7926,11 @@ }, { "constant": false, - "id": 637, + "id": 593, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6946:13:0", + "scope": 615, + "src": "5984:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8534,10 +7938,10 @@ "typeString": "bool" }, "typeName": { - "id": 636, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6946:4:0", + "src": "5984:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8547,26 +7951,26 @@ "visibility": "internal" } ], - "src": "6932:28:0" + "src": "5970:28:0" }, "payable": false, "returnParameters": { - "id": 641, + "id": 597, "nodeType": "ParameterList", "parameters": [], - "src": "6980:0:0" + "src": "6018:0:0" }, - "scope": 1194, - "src": "6903:184:0", + "scope": 1146, + "src": "5941:184:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 685, + "id": 641, "nodeType": "Block", - "src": "7215:124:0", + "src": "6253:124:0", "statements": [ { "condition": { @@ -8575,7 +7979,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 671, + "id": 627, "isConstant": false, "isLValue": false, "isPure": false, @@ -8587,12 +7991,12 @@ "arguments": [ { "argumentTypes": null, - "id": 667, + "id": 623, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7235:7:0", + "referencedDeclaration": 617, + "src": "6273:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8606,20 +8010,20 @@ "typeString": "string memory" } ], - "id": 666, + "id": 622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7229:5:0", + "src": "6267:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 668, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -8627,13 +8031,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7229:14:0", + "src": "6267:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 669, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -8641,7 +8045,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7229:21:0", + "src": "6267:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8652,14 +8056,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 670, + "id": 626, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7253:2:0", + "src": "6291:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -8667,37 +8071,37 @@ }, "value": "21" }, - "src": "7229:26:0", + "src": "6267:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 675, + "id": 631, "nodeType": "IfStatement", - "src": "7225:40:0", + "src": "6263:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 672, + "id": 628, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7257:6:0", + "referencedDeclaration": 1505, + "src": "6295:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 673, + "id": 629, "isConstant": false, "isLValue": false, "isPure": false, @@ -8705,15 +8109,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7257:8:0", + "src": "6295:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 674, + "id": 630, "nodeType": "ExpressionStatement", - "src": "7257:8:0" + "src": "6295:8:0" } }, { @@ -8722,12 +8126,12 @@ "arguments": [ { "argumentTypes": null, - "id": 677, + "id": 633, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7294:4:0", + "referencedDeclaration": 56, + "src": "6332:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8735,12 +8139,12 @@ }, { "argumentTypes": null, - "id": 678, + "id": 634, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7300:7:0", + "referencedDeclaration": 617, + "src": "6338:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8758,18 +8162,18 @@ "typeString": "string memory" } ], - "id": 676, + "id": 632, "name": "ChangeContractName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 278, - "src": "7275:18:0", + "referencedDeclaration": 234, + "src": "6313:18:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, - "id": 679, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, @@ -8777,32 +8181,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7275:33:0", + "src": "6313:33:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 680, + "id": 636, "nodeType": "ExpressionStatement", - "src": "7275:33:0" + "src": "6313:33:0" }, { "expression": { "argumentTypes": null, - "id": 683, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 681, + "id": 637, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7318:4:0", + "referencedDeclaration": 56, + "src": "6356:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8812,68 +8216,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 682, + "id": 638, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7325:7:0", + "referencedDeclaration": 617, + "src": "6363:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "7318:14:0", + "src": "6356:14:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 684, + "id": 640, "nodeType": "ExpressionStatement", - "src": "7318:14:0" + "src": "6356:14:0" } ] }, "documentation": null, - "id": 686, + "id": 642, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 664, + "id": 620, "modifierName": { "argumentTypes": null, - "id": 663, + "id": 619, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "7203:9:0", + "referencedDeclaration": 290, + "src": "6241:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7203:11:0" + "src": "6241:11:0" } ], "name": "changeContractName", "nodeType": "FunctionDefinition", "parameters": { - "id": 662, + "id": 618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 661, + "id": 617, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 686, - "src": "7180:14:0", + "scope": 642, + "src": "6218:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8881,10 +8285,10 @@ "typeString": "string" }, "typeName": { - "id": 660, + "id": 616, "name": "string", "nodeType": "ElementaryTypeName", - "src": "7180:6:0", + "src": "6218:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8894,26 +8298,26 @@ "visibility": "internal" } ], - "src": "7179:16:0" + "src": "6217:16:0" }, "payable": false, "returnParameters": { - "id": 665, + "id": 621, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:0" + "src": "6253:0:0" }, - "scope": 1194, - "src": "7152:187:0", + "scope": 1146, + "src": "6190:187:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 722, + "id": 678, "nodeType": "Block", - "src": "7653:262:0", + "src": "6691:262:0", "statements": [ { "condition": { @@ -8922,19 +8326,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 695, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 693, + "id": 649, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7667:13:0", + "referencedDeclaration": 644, + "src": "6705:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8944,48 +8348,48 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 694, + "id": 650, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7683:22:0", + "referencedDeclaration": 69, + "src": "6721:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7667:38:0", + "src": "6705:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 699, + "id": 655, "nodeType": "IfStatement", - "src": "7663:52:0", + "src": "6701:52:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 696, + "id": 652, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7707:6:0", + "referencedDeclaration": 1505, + "src": "6745:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 697, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -8993,15 +8397,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7707:8:0", + "src": "6745:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 698, + "id": 654, "nodeType": "ExpressionStatement", - "src": "7707:8:0" + "src": "6745:8:0" } }, { @@ -9011,7 +8415,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 706, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, @@ -9021,12 +8425,12 @@ "arguments": [ { "argumentTypes": null, - "id": 702, + "id": 658, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7747:22:0", + "referencedDeclaration": 69, + "src": "6785:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9042,32 +8446,32 @@ ], "expression": { "argumentTypes": null, - "id": 700, + "id": 656, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7729:13:0", + "referencedDeclaration": 644, + "src": "6767:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 701, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "7729:17:0", + "referencedDeclaration": 1281, + "src": "6767:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 703, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, @@ -9075,7 +8479,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7729:41:0", + "src": "6767:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9087,18 +8491,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 704, + "id": 660, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7773:4:0", + "referencedDeclaration": 1513, + "src": "6811:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 705, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -9106,43 +8510,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7773:12:0", + "src": "6811:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7729:56:0", + "src": "6767:56:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 710, + "id": 666, "nodeType": "IfStatement", - "src": "7725:70:0", + "src": "6763:70:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 707, + "id": 663, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7787:6:0", + "referencedDeclaration": 1505, + "src": "6825:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 708, + "id": 664, "isConstant": false, "isLValue": false, "isPure": false, @@ -9150,15 +8554,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7787:8:0", + "src": "6825:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 709, + "id": 665, "nodeType": "ExpressionStatement", - "src": "7787:8:0" + "src": "6825:8:0" } }, { @@ -9169,18 +8573,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 712, + "id": 668, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7826:4:0", + "referencedDeclaration": 1513, + "src": "6864:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 713, + "id": 669, "isConstant": false, "isLValue": false, "isPure": false, @@ -9188,7 +8592,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7826:12:0", + "src": "6864:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9196,12 +8600,12 @@ }, { "argumentTypes": null, - "id": 714, + "id": 670, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7840:13:0", + "referencedDeclaration": 67, + "src": "6878:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9209,12 +8613,12 @@ }, { "argumentTypes": null, - "id": 715, + "id": 671, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7855:13:0", + "referencedDeclaration": 644, + "src": "6893:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9236,18 +8640,18 @@ "typeString": "uint256" } ], - "id": 711, + "id": 667, "name": "ChangeSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 294, - "src": "7806:19:0", + "referencedDeclaration": 250, + "src": "6844:19:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 716, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -9255,32 +8659,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7806:63:0", + "src": "6844:63:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 717, + "id": 673, "nodeType": "ExpressionStatement", - "src": "7806:63:0" + "src": "6844:63:0" }, { "expression": { "argumentTypes": null, - "id": 720, + "id": 676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 718, + "id": 674, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7879:13:0", + "referencedDeclaration": 67, + "src": "6917:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9290,68 +8694,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 719, + "id": 675, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7895:13:0", + "referencedDeclaration": 644, + "src": "6933:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7879:29:0", + "src": "6917:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 721, + "id": 677, "nodeType": "ExpressionStatement", - "src": "7879:29:0" + "src": "6917:29:0" } ] }, "documentation": null, - "id": 723, + "id": 679, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 691, + "id": 647, "modifierName": { "argumentTypes": null, - "id": 690, + "id": 646, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "7641:9:0", + "referencedDeclaration": 30, + "src": "6679:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7641:11:0" + "src": "6679:11:0" } ], "name": "changeSharedExpenseAllocation", "nodeType": "FunctionDefinition", "parameters": { - "id": 689, + "id": 645, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 688, + "id": 644, "name": "newAllocation", "nodeType": "VariableDeclaration", - "scope": 723, - "src": "7611:21:0", + "scope": 679, + "src": "6649:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9359,10 +8763,10 @@ "typeString": "uint256" }, "typeName": { - "id": 687, + "id": 643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7611:7:0", + "src": "6649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9372,39 +8776,39 @@ "visibility": "internal" } ], - "src": "7610:23:0" + "src": "6648:23:0" }, "payable": false, "returnParameters": { - "id": 692, + "id": 648, "nodeType": "ParameterList", "parameters": [], - "src": "7653:0:0" + "src": "6691:0:0" }, - "scope": 1194, - "src": "7572:343:0", + "scope": 1146, + "src": "6610:343:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 771, + "id": 727, "nodeType": "Block", - "src": "8108:283:0", + "src": "7146:283:0", "statements": [ { "assignments": [ - 736 + 692 ], "declarations": [ { "constant": false, - "id": 736, + "id": 692, "name": "currentShares", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8118:21:0", + "scope": 728, + "src": "7156:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9412,10 +8816,10 @@ "typeString": "uint256" }, "typeName": { - "id": 735, + "id": 691, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8118:7:0", + "src": "7156:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9425,33 +8829,33 @@ "visibility": "internal" } ], - "id": 741, + "id": 697, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 737, + "id": 693, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8142:7:0", + "referencedDeclaration": 73, + "src": "7180:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 739, + "id": 695, "indexExpression": { "argumentTypes": null, - "id": 738, + "id": 694, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8150:3:0", + "referencedDeclaration": 681, + "src": "7188:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9462,28 +8866,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8142:12:0", + "src": "7180:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 740, + "id": 696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8142:19:0", + "referencedDeclaration": 82, + "src": "7180:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8118:43:0" + "src": "7156:43:0" }, { "condition": { @@ -9492,19 +8896,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 744, + "id": 700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 742, + "id": 698, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8175:6:0", + "referencedDeclaration": 683, + "src": "7213:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9514,48 +8918,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 743, + "id": 699, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8185:13:0", + "referencedDeclaration": 692, + "src": "7223:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8175:23:0", + "src": "7213:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 748, + "id": 704, "nodeType": "IfStatement", - "src": "8171:37:0", + "src": "7209:37:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 745, + "id": 701, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "8200:6:0", + "referencedDeclaration": 1505, + "src": "7238:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 746, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -9563,15 +8967,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8200:8:0", + "src": "7238:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 747, + "id": 703, "nodeType": "ExpressionStatement", - "src": "8200:8:0" + "src": "7238:8:0" } }, { @@ -9581,19 +8985,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 751, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 705, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8222:6:0", + "referencedDeclaration": 683, + "src": "7260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9603,27 +9007,27 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 750, + "id": 706, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8231:13:0", + "referencedDeclaration": 692, + "src": "7269:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8222:22:0", + "src": "7260:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 769, + "id": 725, "nodeType": "Block", - "src": "8317:68:0", + "src": "7355:68:0", "statements": [ { "expression": { @@ -9631,12 +9035,12 @@ "arguments": [ { "argumentTypes": null, - "id": 762, + "id": 718, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8343:3:0", + "referencedDeclaration": 681, + "src": "7381:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9647,12 +9051,12 @@ "arguments": [ { "argumentTypes": null, - "id": 765, + "id": 721, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8366:6:0", + "referencedDeclaration": 683, + "src": "7404:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9668,32 +9072,32 @@ ], "expression": { "argumentTypes": null, - "id": 763, + "id": 719, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8348:13:0", + "referencedDeclaration": 692, + "src": "7386:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 764, + "id": 720, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8348:17:0", + "referencedDeclaration": 1281, + "src": "7386:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 766, + "id": 722, "isConstant": false, "isLValue": false, "isPure": false, @@ -9701,7 +9105,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:25:0", + "src": "7386:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9719,18 +9123,18 @@ "typeString": "uint256" } ], - "id": 761, + "id": 717, "name": "removeShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 856, - "src": "8331:11:0", + "referencedDeclaration": 812, + "src": "7369:11:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 767, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -9738,25 +9142,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8331:43:0", + "src": "7369:43:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 724, "nodeType": "ExpressionStatement", - "src": "8331:43:0" + "src": "7369:43:0" } ] }, - "id": 770, + "id": 726, "nodeType": "IfStatement", - "src": "8218:167:0", + "src": "7256:167:0", "trueBody": { - "id": 760, + "id": 716, "nodeType": "Block", - "src": "8246:65:0", + "src": "7284:65:0", "statements": [ { "expression": { @@ -9764,12 +9168,12 @@ "arguments": [ { "argumentTypes": null, - "id": 753, + "id": 709, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8269:3:0", + "referencedDeclaration": 681, + "src": "7307:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9780,12 +9184,12 @@ "arguments": [ { "argumentTypes": null, - "id": 756, + "id": 712, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8285:13:0", + "referencedDeclaration": 692, + "src": "7323:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9801,32 +9205,32 @@ ], "expression": { "argumentTypes": null, - "id": 754, + "id": 710, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8274:6:0", + "referencedDeclaration": 683, + "src": "7312:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 755, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8274:10:0", + "referencedDeclaration": 1281, + "src": "7312:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 757, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -9834,7 +9238,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8274:25:0", + "src": "7312:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9852,18 +9256,18 @@ "typeString": "uint256" } ], - "id": 752, + "id": 708, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "8260:8:0", + "referencedDeclaration": 770, + "src": "7298:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 758, + "id": 714, "isConstant": false, "isLValue": false, "isPure": false, @@ -9871,15 +9275,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8260:40:0", + "src": "7298:40:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 759, + "id": 715, "nodeType": "ExpressionStatement", - "src": "8260:40:0" + "src": "7298:40:0" } ] } @@ -9887,77 +9291,77 @@ ] }, "documentation": null, - "id": 772, + "id": 728, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 730, + "id": 686, "modifierName": { "argumentTypes": null, - "id": 729, + "id": 685, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8078:9:0", + "referencedDeclaration": 290, + "src": "7116:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8078:11:0" + "src": "7116:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 732, + "id": 688, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8103:3:0", + "referencedDeclaration": 681, + "src": "7141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 733, + "id": 689, "modifierName": { "argumentTypes": null, - "id": 731, + "id": 687, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8090:12:0", + "referencedDeclaration": 305, + "src": "7128:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8090:17:0" + "src": "7128:17:0" } ], "name": "allocateShares", "nodeType": "FunctionDefinition", "parameters": { - "id": 728, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 725, + "id": 681, "name": "who", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8042:11:0", + "scope": 728, + "src": "7080:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9965,10 +9369,10 @@ "typeString": "address" }, "typeName": { - "id": 724, + "id": 680, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8042:7:0", + "src": "7080:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9979,11 +9383,11 @@ }, { "constant": false, - "id": 727, + "id": 683, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8055:14:0", + "scope": 728, + "src": "7093:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9991,10 +9395,10 @@ "typeString": "uint256" }, "typeName": { - "id": 726, + "id": 682, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8055:7:0", + "src": "7093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10004,43 +9408,43 @@ "visibility": "internal" } ], - "src": "8041:29:0" + "src": "7079:29:0" }, "payable": false, "returnParameters": { - "id": 734, + "id": 690, "nodeType": "ParameterList", "parameters": [], - "src": "8108:0:0" + "src": "7146:0:0" }, - "scope": 1194, - "src": "8018:373:0", + "scope": 1146, + "src": "7056:373:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 813, + "id": 769, "nodeType": "Block", - "src": "8532:169:0", + "src": "7570:169:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 789, + "id": 745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 784, + "id": 740, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8542:11:0", + "referencedDeclaration": 58, + "src": "7580:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10053,12 +9457,12 @@ "arguments": [ { "argumentTypes": null, - "id": 787, + "id": 743, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8572:6:0", + "referencedDeclaration": 732, + "src": "7610:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10074,32 +9478,32 @@ ], "expression": { "argumentTypes": null, - "id": 785, + "id": 741, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8556:11:0", + "referencedDeclaration": 58, + "src": "7594:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 786, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8556:15:0", + "referencedDeclaration": 1305, + "src": "7594:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 788, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, @@ -10107,26 +9511,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8556:23:0", + "src": "7594:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8542:37:0", + "src": "7580:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 790, + "id": 746, "nodeType": "ExpressionStatement", - "src": "8542:37:0" + "src": "7580:37:0" }, { "expression": { "argumentTypes": null, - "id": 802, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, @@ -10137,26 +9541,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 791, + "id": 747, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8589:7:0", + "referencedDeclaration": 73, + "src": "7627:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 793, + "id": 749, "indexExpression": { "argumentTypes": null, - "id": 792, + "id": 748, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8597:3:0", + "referencedDeclaration": 730, + "src": "7635:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10167,21 +9571,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8589:12:0", + "src": "7627:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 794, + "id": 750, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8589:19:0", + "referencedDeclaration": 82, + "src": "7627:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10194,12 +9598,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 756, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8635:6:0", + "referencedDeclaration": 732, + "src": "7673:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10219,26 +9623,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 795, + "id": 751, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8611:7:0", + "referencedDeclaration": 73, + "src": "7649:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 797, + "id": 753, "indexExpression": { "argumentTypes": null, - "id": 796, + "id": 752, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8619:3:0", + "referencedDeclaration": 730, + "src": "7657:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10249,41 +9653,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8611:12:0", + "src": "7649:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 798, + "id": 754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8611:19:0", + "referencedDeclaration": 82, + "src": "7649:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 799, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8611:23:0", + "referencedDeclaration": 1305, + "src": "7649:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 801, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -10291,21 +9695,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8611:31:0", + "src": "7649:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8589:53:0", + "src": "7627:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 803, + "id": 759, "nodeType": "ExpressionStatement", - "src": "8589:53:0" + "src": "7627:53:0" }, { "expression": { @@ -10313,12 +9717,12 @@ "arguments": [ { "argumentTypes": null, - "id": 805, + "id": 761, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8661:3:0", + "referencedDeclaration": 730, + "src": "7699:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10326,12 +9730,12 @@ }, { "argumentTypes": null, - "id": 806, + "id": 762, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8666:6:0", + "referencedDeclaration": 732, + "src": "7704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10343,26 +9747,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 807, + "id": 763, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8674:7:0", + "referencedDeclaration": 73, + "src": "7712:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 809, + "id": 765, "indexExpression": { "argumentTypes": null, - "id": 808, + "id": 764, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8682:3:0", + "referencedDeclaration": 730, + "src": "7720:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10373,21 +9777,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8674:12:0", + "src": "7712:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 810, + "id": 766, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8674:19:0", + "referencedDeclaration": 82, + "src": "7712:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10409,18 +9813,18 @@ "typeString": "uint256" } ], - "id": 804, + "id": 760, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "8652:8:0", + "referencedDeclaration": 212, + "src": "7690:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 811, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -10428,90 +9832,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8652:42:0", + "src": "7690:42:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 812, + "id": 768, "nodeType": "ExpressionStatement", - "src": "8652:42:0" + "src": "7690:42:0" } ] }, "documentation": null, - "id": 814, + "id": 770, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 779, + "id": 735, "modifierName": { "argumentTypes": null, - "id": 778, + "id": 734, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8502:9:0", + "referencedDeclaration": 290, + "src": "7540:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8502:11:0" + "src": "7540:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 781, + "id": 737, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8527:3:0", + "referencedDeclaration": 730, + "src": "7565:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 782, + "id": 738, "modifierName": { "argumentTypes": null, - "id": 780, + "id": 736, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8514:12:0", + "referencedDeclaration": 305, + "src": "7552:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8514:17:0" + "src": "7552:17:0" } ], "name": "addShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 777, + "id": 733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 730, "name": "who", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8466:11:0", + "scope": 770, + "src": "7504:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10519,10 +9923,10 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8466:7:0", + "src": "7504:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10533,11 +9937,11 @@ }, { "constant": false, - "id": 776, + "id": 732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8479:14:0", + "scope": 770, + "src": "7517:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10545,10 +9949,10 @@ "typeString": "uint256" }, "typeName": { - "id": 775, + "id": 731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8479:7:0", + "src": "7517:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10558,43 +9962,43 @@ "visibility": "internal" } ], - "src": "8465:29:0" + "src": "7503:29:0" }, "payable": false, "returnParameters": { - "id": 783, + "id": 739, "nodeType": "ParameterList", "parameters": [], - "src": "8532:0:0" + "src": "7570:0:0" }, - "scope": 1194, - "src": "8448:253:0", + "scope": 1146, + "src": "7486:253:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 855, + "id": 811, "nodeType": "Block", - "src": "8845:172:0", + "src": "7883:172:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 831, + "id": 787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 826, + "id": 782, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8855:11:0", + "referencedDeclaration": 58, + "src": "7893:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10607,12 +10011,12 @@ "arguments": [ { "argumentTypes": null, - "id": 829, + "id": 785, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8885:6:0", + "referencedDeclaration": 774, + "src": "7923:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10628,32 +10032,32 @@ ], "expression": { "argumentTypes": null, - "id": 827, + "id": 783, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8869:11:0", + "referencedDeclaration": 58, + "src": "7907:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 828, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8869:15:0", + "referencedDeclaration": 1281, + "src": "7907:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 830, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -10661,26 +10065,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8869:23:0", + "src": "7907:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8855:37:0", + "src": "7893:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 832, + "id": 788, "nodeType": "ExpressionStatement", - "src": "8855:37:0" + "src": "7893:37:0" }, { "expression": { "argumentTypes": null, - "id": 844, + "id": 800, "isConstant": false, "isLValue": false, "isPure": false, @@ -10691,26 +10095,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 833, + "id": 789, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8902:7:0", + "referencedDeclaration": 73, + "src": "7940:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 835, + "id": 791, "indexExpression": { "argumentTypes": null, - "id": 834, + "id": 790, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8910:3:0", + "referencedDeclaration": 772, + "src": "7948:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10721,21 +10125,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8902:12:0", + "src": "7940:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 836, + "id": 792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8902:19:0", + "referencedDeclaration": 82, + "src": "7940:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10748,12 +10152,12 @@ "arguments": [ { "argumentTypes": null, - "id": 842, + "id": 798, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8948:6:0", + "referencedDeclaration": 774, + "src": "7986:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10773,26 +10177,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 837, + "id": 793, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8924:7:0", + "referencedDeclaration": 73, + "src": "7962:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 839, + "id": 795, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 794, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8932:3:0", + "referencedDeclaration": 772, + "src": "7970:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10803,41 +10207,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8924:12:0", + "src": "7962:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 840, + "id": 796, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8924:19:0", + "referencedDeclaration": 82, + "src": "7962:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 841, + "id": 797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8924:23:0", + "referencedDeclaration": 1281, + "src": "7962:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 843, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -10845,21 +10249,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8924:31:0", + "src": "7962:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8902:53:0", + "src": "7940:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 845, + "id": 801, "nodeType": "ExpressionStatement", - "src": "8902:53:0" + "src": "7940:53:0" }, { "expression": { @@ -10867,12 +10271,12 @@ "arguments": [ { "argumentTypes": null, - "id": 847, + "id": 803, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8977:3:0", + "referencedDeclaration": 772, + "src": "8015:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10880,12 +10284,12 @@ }, { "argumentTypes": null, - "id": 848, + "id": 804, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8982:6:0", + "referencedDeclaration": 774, + "src": "8020:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10897,26 +10301,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 849, + "id": 805, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8990:7:0", + "referencedDeclaration": 73, + "src": "8028:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 851, + "id": 807, "indexExpression": { "argumentTypes": null, - "id": 850, + "id": 806, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8998:3:0", + "referencedDeclaration": 772, + "src": "8036:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10927,21 +10331,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:12:0", + "src": "8028:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 852, + "id": 808, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8990:19:0", + "referencedDeclaration": 82, + "src": "8028:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10963,18 +10367,18 @@ "typeString": "uint256" } ], - "id": 846, + "id": 802, "name": "RemoveShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 264, - "src": "8965:11:0", + "referencedDeclaration": 220, + "src": "8003:11:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 853, + "id": 809, "isConstant": false, "isLValue": false, "isPure": false, @@ -10982,90 +10386,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8965:45:0", + "src": "8003:45:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 854, + "id": 810, "nodeType": "ExpressionStatement", - "src": "8965:45:0" + "src": "8003:45:0" } ] }, "documentation": null, - "id": 856, + "id": 812, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 821, + "id": 777, "modifierName": { "argumentTypes": null, - "id": 820, + "id": 776, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8815:9:0", + "referencedDeclaration": 290, + "src": "7853:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8815:11:0" + "src": "7853:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 823, + "id": 779, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8840:3:0", + "referencedDeclaration": 772, + "src": "7878:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 824, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 822, + "id": 778, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8827:12:0", + "referencedDeclaration": 305, + "src": "7865:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8827:17:0" + "src": "7865:17:0" } ], "name": "removeShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 819, + "id": 775, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 816, + "id": 772, "name": "who", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8779:11:0", + "scope": 812, + "src": "7817:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11073,10 +10477,10 @@ "typeString": "address" }, "typeName": { - "id": 815, + "id": 771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8779:7:0", + "src": "7817:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11087,11 +10491,11 @@ }, { "constant": false, - "id": 818, + "id": 774, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8792:14:0", + "scope": 812, + "src": "7830:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11099,10 +10503,10 @@ "typeString": "uint256" }, "typeName": { - "id": 817, + "id": 773, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8792:7:0", + "src": "7830:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11112,39 +10516,39 @@ "visibility": "internal" } ], - "src": "8778:29:0" + "src": "7816:29:0" }, "payable": false, "returnParameters": { - "id": 825, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "8845:0:0" + "src": "7883:0:0" }, - "scope": 1194, - "src": "8758:259:0", + "scope": 1146, + "src": "7796:259:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 923, + "id": 879, "nodeType": "Block", - "src": "9430:392:0", + "src": "8468:392:0", "statements": [ { "assignments": [ - 866 + 822 ], "declarations": [ { "constant": false, - "id": 866, + "id": 822, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9440:16:0", + "scope": 880, + "src": "8478:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11152,10 +10556,10 @@ "typeString": "uint256" }, "typeName": { - "id": 865, + "id": 821, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9440:7:0", + "src": "8478:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11165,7 +10569,7 @@ "visibility": "internal" } ], - "id": 871, + "id": 827, "initialValue": { "argumentTypes": null, "arguments": [ @@ -11173,18 +10577,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 868, + "id": 824, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9492:3:0", + "referencedDeclaration": 1500, + "src": "8530:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 869, + "id": 825, "isConstant": false, "isLValue": false, "isPure": false, @@ -11192,7 +10596,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9492:10:0", + "src": "8530:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11206,18 +10610,18 @@ "typeString": "address" } ], - "id": 867, + "id": 823, "name": "calculateTotalWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1113, - "src": "9459:32:0", + "referencedDeclaration": 1066, + "src": "8497:32:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 870, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -11225,14 +10629,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9459:44:0", + "src": "8497:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9440:63:0" + "src": "8478:63:0" }, { "condition": { @@ -11241,19 +10645,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 881, + "id": 837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 872, + "id": 828, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9517:6:0", + "referencedDeclaration": 814, + "src": "8555:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11270,34 +10674,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 875, + "id": 831, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9539:7:0", + "referencedDeclaration": 73, + "src": "8577:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 878, + "id": 834, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 876, + "id": 832, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9547:3:0", + "referencedDeclaration": 1500, + "src": "8585:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 877, + "id": 833, "isConstant": false, "isLValue": false, "isPure": false, @@ -11305,7 +10709,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9547:10:0", + "src": "8585:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11316,21 +10720,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9539:19:0", + "src": "8577:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 879, + "id": 835, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9539:29:0", + "referencedDeclaration": 84, + "src": "8577:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11346,32 +10750,32 @@ ], "expression": { "argumentTypes": null, - "id": 873, + "id": 829, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "9526:8:0", + "referencedDeclaration": 822, + "src": "8564:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 874, + "id": 830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "9526:12:0", + "referencedDeclaration": 1281, + "src": "8564:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 880, + "id": 836, "isConstant": false, "isLValue": false, "isPure": false, @@ -11379,43 +10783,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9526:43:0", + "src": "8564:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9517:52:0", + "src": "8555:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 885, + "id": 841, "nodeType": "IfStatement", - "src": "9513:66:0", + "src": "8551:66:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 882, + "id": 838, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "9571:6:0", + "referencedDeclaration": 1505, + "src": "8609:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 883, + "id": 839, "isConstant": false, "isLValue": false, "isPure": false, @@ -11423,21 +10827,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9571:8:0", + "src": "8609:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 884, + "id": 840, "nodeType": "ExpressionStatement", - "src": "9571:8:0" + "src": "8609:8:0" } }, { "expression": { "argumentTypes": null, - "id": 899, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -11448,34 +10852,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 886, + "id": 842, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9598:7:0", + "referencedDeclaration": 73, + "src": "8636:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 889, + "id": 845, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 887, + "id": 843, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9606:3:0", + "referencedDeclaration": 1500, + "src": "8644:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 888, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -11483,7 +10887,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9606:10:0", + "src": "8644:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11494,21 +10898,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9598:19:0", + "src": "8636:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 890, + "id": 846, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9598:29:0", + "referencedDeclaration": 84, + "src": "8636:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11521,12 +10925,12 @@ "arguments": [ { "argumentTypes": null, - "id": 897, + "id": 853, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9664:6:0", + "referencedDeclaration": 814, + "src": "8702:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11546,34 +10950,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 891, + "id": 847, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9630:7:0", + "referencedDeclaration": 73, + "src": "8668:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 894, + "id": 850, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 892, + "id": 848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9638:3:0", + "referencedDeclaration": 1500, + "src": "8676:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 893, + "id": 849, "isConstant": false, "isLValue": false, "isPure": false, @@ -11581,7 +10985,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9638:10:0", + "src": "8676:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11592,41 +10996,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9630:19:0", + "src": "8668:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 895, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9630:29:0", + "referencedDeclaration": 84, + "src": "8668:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 896, + "id": 852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9630:33:0", + "referencedDeclaration": 1305, + "src": "8668:33:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 898, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, @@ -11634,38 +11038,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9630:41:0", + "src": "8668:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9598:73:0", + "src": "8636:73:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 900, + "id": 856, "nodeType": "ExpressionStatement", - "src": "9598:73:0" + "src": "8636:73:0" }, { "expression": { "argumentTypes": null, - "id": 906, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 901, + "id": 857, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9681:14:0", + "referencedDeclaration": 60, + "src": "8719:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11678,12 +11082,12 @@ "arguments": [ { "argumentTypes": null, - "id": 904, + "id": 860, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9717:6:0", + "referencedDeclaration": 814, + "src": "8755:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11699,32 +11103,32 @@ ], "expression": { "argumentTypes": null, - "id": 902, + "id": 858, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9698:14:0", + "referencedDeclaration": 60, + "src": "8736:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 903, + "id": 859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9698:18:0", + "referencedDeclaration": 1305, + "src": "8736:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 905, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -11732,21 +11136,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9698:26:0", + "src": "8736:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:43:0", + "src": "8719:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 907, + "id": 863, "nodeType": "ExpressionStatement", - "src": "9681:43:0" + "src": "8719:43:0" }, { "expression": { @@ -11754,12 +11158,12 @@ "arguments": [ { "argumentTypes": null, - "id": 913, + "id": 869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9754:6:0", + "referencedDeclaration": 814, + "src": "8792:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11777,18 +11181,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 908, + "id": 864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9734:3:0", + "referencedDeclaration": 1500, + "src": "8772:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 911, + "id": 867, "isConstant": false, "isLValue": false, "isPure": false, @@ -11796,13 +11200,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:10:0", + "src": "8772:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 912, + "id": 868, "isConstant": false, "isLValue": false, "isPure": false, @@ -11810,13 +11214,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:19:0", + "src": "8772:19:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 914, + "id": 870, "isConstant": false, "isLValue": false, "isPure": false, @@ -11824,15 +11228,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9734:27:0", + "src": "8772:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 915, + "id": 871, "nodeType": "ExpressionStatement", - "src": "9734:27:0" + "src": "8772:27:0" }, { "expression": { @@ -11842,18 +11246,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 873, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9780:3:0", + "referencedDeclaration": 1500, + "src": "8818:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 918, + "id": 874, "isConstant": false, "isLValue": false, "isPure": false, @@ -11861,7 +11265,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9780:10:0", + "src": "8818:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11869,12 +11273,12 @@ }, { "argumentTypes": null, - "id": 919, + "id": 875, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9792:6:0", + "referencedDeclaration": 814, + "src": "8830:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11882,12 +11286,12 @@ }, { "argumentTypes": null, - "id": 920, + "id": 876, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9800:14:0", + "referencedDeclaration": 60, + "src": "8838:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11909,18 +11313,18 @@ "typeString": "uint256" } ], - "id": 916, + "id": 872, "name": "Withdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "9771:8:0", + "referencedDeclaration": 194, + "src": "8809:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 921, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -11928,20 +11332,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9771:44:0", + "src": "8809:44:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 922, + "id": 878, "nodeType": "ExpressionStatement", - "src": "9771:44:0" + "src": "8809:44:0" } ] }, "documentation": null, - "id": 924, + "id": 880, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -11952,18 +11356,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 861, + "id": 817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9418:3:0", + "referencedDeclaration": 1500, + "src": "8456:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 862, + "id": 818, "isConstant": false, "isLValue": false, "isPure": false, @@ -11971,44 +11375,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9418:10:0", + "src": "8456:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 863, + "id": 819, "modifierName": { "argumentTypes": null, - "id": 860, + "id": 816, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9405:12:0", + "referencedDeclaration": 305, + "src": "8443:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9405:24:0" + "src": "8443:24:0" } ], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 859, + "id": 815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 858, + "id": 814, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9382:14:0", + "scope": 880, + "src": "8420:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12016,10 +11420,10 @@ "typeString": "uint256" }, "typeName": { - "id": 857, + "id": 813, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9382:7:0", + "src": "8420:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12029,39 +11433,39 @@ "visibility": "internal" } ], - "src": "9381:16:0" + "src": "8419:16:0" }, "payable": false, "returnParameters": { - "id": 864, + "id": 820, "nodeType": "ParameterList", "parameters": [], - "src": "9430:0:0" + "src": "8468:0:0" }, - "scope": 1194, - "src": "9364:458:0", + "scope": 1146, + "src": "8402:458:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1011, + "id": 964, "nodeType": "Block", - "src": "9958:503:0", + "src": "8997:458:0", "statements": [ { "assignments": [ - 936 + 892 ], "declarations": [ { "constant": false, - "id": 936, + "id": 892, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9968:16:0", + "scope": 965, + "src": "9007:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -12069,10 +11473,10 @@ "typeString": "uint256" }, "typeName": { - "id": 935, + "id": 891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9968:7:0", + "src": "9007:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12082,7 +11486,7 @@ "visibility": "internal" } ], - "id": 942, + "id": 898, "initialValue": { "argumentTypes": null, "arguments": [ @@ -12090,18 +11494,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 938, + "id": 894, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10025:3:0", + "referencedDeclaration": 1500, + "src": "9064:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 939, + "id": 895, "isConstant": false, "isLValue": false, "isPure": false, @@ -12109,7 +11513,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10025:10:0", + "src": "9064:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12117,12 +11521,12 @@ }, { "argumentTypes": null, - "id": 940, + "id": 896, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10037:5:0", + "referencedDeclaration": 884, + "src": "9076:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12140,18 +11544,18 @@ "typeString": "address" } ], - "id": 937, + "id": 893, "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "9987:37:0", + "referencedDeclaration": 1116, + "src": "9026:37:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 941, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -12159,14 +11563,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9987:56:0", + "src": "9026:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9968:75:0" + "src": "9007:75:0" }, { "condition": { @@ -12175,19 +11579,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 954, + "id": 910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 943, + "id": 899, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10057:6:0", + "referencedDeclaration": 882, + "src": "9096:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12206,34 +11610,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 946, + "id": 902, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10079:7:0", + "referencedDeclaration": 73, + "src": "9118:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 949, + "id": 905, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 903, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10087:3:0", + "referencedDeclaration": 1500, + "src": "9126:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 948, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, @@ -12241,7 +11645,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10087:10:0", + "src": "9126:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12252,35 +11656,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:19:0", + "src": "9118:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 950, + "id": 906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10079:35:0", + "referencedDeclaration": 90, + "src": "9118:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 952, + "id": 908, "indexExpression": { "argumentTypes": null, - "id": 951, + "id": 907, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10115:5:0", + "referencedDeclaration": 884, + "src": "9154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12291,7 +11695,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:42:0", + "src": "9118:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12307,32 +11711,32 @@ ], "expression": { "argumentTypes": null, - "id": 944, + "id": 900, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "10066:8:0", + "referencedDeclaration": 892, + "src": "9105:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 945, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "10066:12:0", + "referencedDeclaration": 1281, + "src": "9105:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 953, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -12340,43 +11744,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10066:56:0", + "src": "9105:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10057:65:0", + "src": "9096:65:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 958, + "id": 914, "nodeType": "IfStatement", - "src": "10053:79:0", + "src": "9092:79:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 955, + "id": 911, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10124:6:0", + "referencedDeclaration": 1505, + "src": "9163:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 956, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -12384,21 +11788,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10124:8:0", + "src": "9163:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 957, + "id": 913, "nodeType": "ExpressionStatement", - "src": "10124:8:0" + "src": "9163:8:0" } }, { "expression": { "argumentTypes": null, - "id": 976, + "id": 932, "isConstant": false, "isLValue": false, "isPure": false, @@ -12411,34 +11815,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 959, + "id": 915, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10143:7:0", + "referencedDeclaration": 73, + "src": "9182:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 962, + "id": 918, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 960, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10151:3:0", + "referencedDeclaration": 1500, + "src": "9190:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 961, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -12446,7 +11850,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10151:10:0", + "src": "9190:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12457,35 +11861,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10143:19:0", + "src": "9182:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 963, + "id": 919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10143:35:0", + "referencedDeclaration": 90, + "src": "9182:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 965, + "id": 921, "indexExpression": { "argumentTypes": null, - "id": 964, + "id": 920, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10179:5:0", + "referencedDeclaration": 884, + "src": "9218:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12496,7 +11900,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10143:42:0", + "src": "9182:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12509,12 +11913,12 @@ "arguments": [ { "argumentTypes": null, - "id": 974, + "id": 930, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10235:6:0", + "referencedDeclaration": 882, + "src": "9274:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12536,34 +11940,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 966, + "id": 922, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10188:7:0", + "referencedDeclaration": 73, + "src": "9227:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 969, + "id": 925, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 923, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10196:3:0", + "referencedDeclaration": 1500, + "src": "9235:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 968, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -12571,7 +11975,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10196:10:0", + "src": "9235:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12582,35 +11986,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:19:0", + "src": "9227:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 970, + "id": 926, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10188:35:0", + "referencedDeclaration": 90, + "src": "9227:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 972, + "id": 928, "indexExpression": { "argumentTypes": null, - "id": 971, + "id": 927, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10224:5:0", + "referencedDeclaration": 884, + "src": "9263:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12621,27 +12025,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:42:0", + "src": "9227:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 973, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10188:46:0", + "referencedDeclaration": 1305, + "src": "9227:46:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 975, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -12649,81 +12053,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10188:54:0", + "src": "9227:54:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10143:99:0", + "src": "9182:99:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 977, + "id": 933, "nodeType": "ExpressionStatement", - "src": "10143:99:0" + "src": "9182:99:0" }, { "expression": { "argumentTypes": null, - "id": 989, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10252:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "id": 979, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10259:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10252:13:0", + "id": 934, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9291:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 936, + "indexExpression": { + "argumentTypes": null, + "id": 935, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9298:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 981, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10252:28:0", + "nodeType": "IndexAccess", + "src": "9291:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12736,12 +12124,12 @@ "arguments": [ { "argumentTypes": null, - "id": 987, + "id": 941, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10316:6:0", + "referencedDeclaration": 882, + "src": "9325:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12757,75 +12145,59 @@ ], "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 982, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10283:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 984, - "indexExpression": { - "argumentTypes": null, - "id": 983, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10283:13:0", + "id": 937, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9307:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 939, + "indexExpression": { + "argumentTypes": null, + "id": 938, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9314:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 985, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10283:28:0", + "nodeType": "IndexAccess", + "src": "9307:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 986, + "id": 940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10283:32:0", + "referencedDeclaration": 1305, + "src": "9307:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 988, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -12833,21 +12205,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10283:40:0", + "src": "9307:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10252:71:0", + "src": "9291:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 990, + "id": 944, "nodeType": "ExpressionStatement", - "src": "10252:71:0" + "src": "9291:41:0" }, { "expression": { @@ -12857,18 +12229,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 995, + "id": 949, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10355:3:0", + "referencedDeclaration": 1500, + "src": "9364:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 996, + "id": 950, "isConstant": false, "isLValue": false, "isPure": false, @@ -12876,7 +12248,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10355:10:0", + "src": "9364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12884,12 +12256,12 @@ }, { "argumentTypes": null, - "id": 997, + "id": 951, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10367:6:0", + "referencedDeclaration": 882, + "src": "9376:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12912,12 +12284,12 @@ "arguments": [ { "argumentTypes": null, - "id": 992, + "id": 946, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10339:5:0", + "referencedDeclaration": 884, + "src": "9348:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12931,18 +12303,18 @@ "typeString": "address" } ], - "id": 991, + "id": 945, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "10333:5:0", + "referencedDeclaration": 1213, + "src": "9342:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 993, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, @@ -12950,27 +12322,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:12:0", + "src": "9342:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 994, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 1212, - "src": "10333:21:0", + "referencedDeclaration": 1164, + "src": "9342:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 998, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -12978,15 +12350,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:41:0", + "src": "9342:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 999, + "id": 953, "nodeType": "ExpressionStatement", - "src": "10333:41:0" + "src": "9342:41:0" }, { "expression": { @@ -12996,18 +12368,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1001, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10398:3:0", + "referencedDeclaration": 1500, + "src": "9407:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1002, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -13015,7 +12387,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10398:10:0", + "src": "9407:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13023,12 +12395,12 @@ }, { "argumentTypes": null, - "id": 1003, + "id": 957, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10410:6:0", + "referencedDeclaration": 882, + "src": "9419:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13036,12 +12408,12 @@ }, { "argumentTypes": null, - "id": 1004, + "id": 958, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10418:5:0", + "referencedDeclaration": 884, + "src": "9427:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13049,55 +12421,39 @@ }, { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1005, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10425:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1007, - "indexExpression": { - "argumentTypes": null, - "id": 1006, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10425:13:0", + "id": 959, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9434:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "id": 960, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9441:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1008, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10425:28:0", + "nodeType": "IndexAccess", + "src": "9434:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13123,18 +12479,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 954, "name": "TokenWithdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "10384:13:0", + "referencedDeclaration": 204, + "src": "9393:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,address,uint256)" } }, - "id": 1009, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -13142,20 +12498,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10384:70:0", + "src": "9393:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1010, + "id": 963, "nodeType": "ExpressionStatement", - "src": "10384:70:0" + "src": "9393:55:0" } ] }, "documentation": null, - "id": 1012, + "id": 965, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -13166,18 +12522,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 931, + "id": 887, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9946:3:0", + "referencedDeclaration": 1500, + "src": "8985:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 932, + "id": 888, "isConstant": false, "isLValue": false, "isPure": false, @@ -13185,44 +12541,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9946:10:0", + "src": "8985:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 933, + "id": 889, "modifierName": { "argumentTypes": null, - "id": 930, + "id": 886, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9933:12:0", + "referencedDeclaration": 305, + "src": "8972:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9933:24:0" + "src": "8972:24:0" } ], "name": "withdrawToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 929, + "id": 885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 926, + "id": 882, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9895:14:0", + "scope": 965, + "src": "8934:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13230,10 +12586,10 @@ "typeString": "uint256" }, "typeName": { - "id": 925, + "id": 881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9895:7:0", + "src": "8934:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13244,11 +12600,11 @@ }, { "constant": false, - "id": 928, + "id": 884, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9911:13:0", + "scope": 965, + "src": "8950:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13256,10 +12612,10 @@ "typeString": "address" }, "typeName": { - "id": 927, + "id": 883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9911:7:0", + "src": "8950:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13269,26 +12625,26 @@ "visibility": "internal" } ], - "src": "9894:31:0" + "src": "8933:31:0" }, "payable": false, "returnParameters": { - "id": 934, + "id": 890, "nodeType": "ParameterList", "parameters": [], - "src": "9958:0:0" + "src": "8997:0:0" }, - "scope": 1194, - "src": "9872:589:0", + "scope": 1146, + "src": "8911:544:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1050, + "id": 1003, "nodeType": "Block", - "src": "10726:267:0", + "src": "9720:267:0", "statements": [ { "condition": { @@ -13297,19 +12653,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1024, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1021, + "id": 974, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10740:6:0", + "referencedDeclaration": 967, + "src": "9734:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13322,18 +12678,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1022, + "id": 975, "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "10749:39:0", + "referencedDeclaration": 1127, + "src": "9743:39:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1023, + "id": 976, "isConstant": false, "isLValue": false, "isPure": false, @@ -13341,43 +12697,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10749:41:0", + "src": "9743:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10740:50:0", + "src": "9734:50:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1028, + "id": 981, "nodeType": "IfStatement", - "src": "10736:64:0", + "src": "9730:64:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 1025, + "id": 978, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10792:6:0", + "referencedDeclaration": 1505, + "src": "9786:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1026, + "id": 979, "isConstant": false, "isLValue": false, "isPure": false, @@ -13385,33 +12741,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10792:8:0", + "src": "9786:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1027, + "id": 980, "nodeType": "ExpressionStatement", - "src": "10792:8:0" + "src": "9786:8:0" } }, { "expression": { "argumentTypes": null, - "id": 1034, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1029, + "id": 982, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10819:22:0", + "referencedDeclaration": 69, + "src": "9813:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13424,12 +12780,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1032, + "id": 985, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10871:6:0", + "referencedDeclaration": 967, + "src": "9865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13445,32 +12801,32 @@ ], "expression": { "argumentTypes": null, - "id": 1030, + "id": 983, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10844:22:0", + "referencedDeclaration": 69, + "src": "9838:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1031, + "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10844:26:0", + "referencedDeclaration": 1305, + "src": "9838:26:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1033, + "id": 986, "isConstant": false, "isLValue": false, "isPure": false, @@ -13478,21 +12834,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10844:34:0", + "src": "9838:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10819:59:0", + "src": "9813:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1035, + "id": 988, "nodeType": "ExpressionStatement", - "src": "10819:59:0" + "src": "9813:59:0" }, { "expression": { @@ -13500,12 +12856,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1039, + "id": 992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10900:6:0", + "referencedDeclaration": 967, + "src": "9894:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13521,18 +12877,18 @@ ], "expression": { "argumentTypes": null, - "id": 1036, + "id": 989, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10888:2:0", + "referencedDeclaration": 969, + "src": "9882:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1038, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -13540,13 +12896,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10888:11:0", + "src": "9882:11:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1040, + "id": 993, "isConstant": false, "isLValue": false, "isPure": false, @@ -13554,15 +12910,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10888:19:0", + "src": "9882:19:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 994, "nodeType": "ExpressionStatement", - "src": "10888:19:0" + "src": "9882:19:0" }, { "expression": { @@ -13572,18 +12928,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1043, + "id": 996, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10939:3:0", + "referencedDeclaration": 1500, + "src": "9933:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1044, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, @@ -13591,7 +12947,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10939:10:0", + "src": "9933:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13599,12 +12955,12 @@ }, { "argumentTypes": null, - "id": 1045, + "id": 998, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10951:2:0", + "referencedDeclaration": 969, + "src": "9945:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13612,12 +12968,12 @@ }, { "argumentTypes": null, - "id": 1046, + "id": 999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10955:6:0", + "referencedDeclaration": 967, + "src": "9949:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13625,12 +12981,12 @@ }, { "argumentTypes": null, - "id": 1047, + "id": 1000, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10963:22:0", + "referencedDeclaration": 69, + "src": "9957:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13656,18 +13012,18 @@ "typeString": "uint256" } ], - "id": 1042, + "id": 995, "name": "WithdrawSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 304, - "src": "10917:21:0", + "referencedDeclaration": 260, + "src": "9911:21:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 1048, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -13675,57 +13031,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10917:69:0", + "src": "9911:69:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "10917:69:0" + "src": "9911:69:0" } ] }, "documentation": null, - "id": 1051, + "id": 1004, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 1019, + "id": 972, "modifierName": { "argumentTypes": null, - "id": 1018, + "id": 971, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "10714:9:0", + "referencedDeclaration": 290, + "src": "9708:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "10714:11:0" + "src": "9708:11:0" } ], "name": "withdrawSharedExpense", "nodeType": "FunctionDefinition", "parameters": { - "id": 1017, + "id": 970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1014, + "id": 967, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10679:14:0", + "scope": 1004, + "src": "9673:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13733,10 +13089,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1013, + "id": 966, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10679:7:0", + "src": "9673:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13747,11 +13103,11 @@ }, { "constant": false, - "id": 1016, + "id": 969, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10695:10:0", + "scope": 1004, + "src": "9689:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13759,10 +13115,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10695:7:0", + "src": "9689:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13772,39 +13128,39 @@ "visibility": "internal" } ], - "src": "10678:28:0" + "src": "9672:28:0" }, "payable": false, "returnParameters": { - "id": 1020, + "id": 973, "nodeType": "ParameterList", "parameters": [], - "src": "10726:0:0" + "src": "9720:0:0" }, - "scope": 1194, - "src": "10648:345:0", + "scope": 1146, + "src": "9642:345:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1112, + "id": 1065, "nodeType": "Block", - "src": "11276:651:0", + "src": "10270:651:0", "statements": [ { "assignments": [ - 1062 + 1015 ], "declarations": [ { "constant": false, - "id": 1062, + "id": 1015, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11424:18:0", + "scope": 1066, + "src": "10418:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13812,10 +13168,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1061, + "id": 1014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11424:7:0", + "src": "10418:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13825,18 +13181,18 @@ "visibility": "internal" } ], - "id": 1068, + "id": 1021, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1066, + "id": 1019, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "11462:14:0", + "referencedDeclaration": 60, + "src": "10456:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13854,18 +13210,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1063, + "id": 1016, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "11445:4:0", + "referencedDeclaration": 1513, + "src": "10439:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 1064, + "id": 1017, "isConstant": false, "isLValue": false, "isPure": false, @@ -13873,27 +13229,27 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "11445:12:0", + "src": "10439:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1065, + "id": 1018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11445:16:0", + "referencedDeclaration": 1305, + "src": "10439:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1067, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": false, @@ -13901,31 +13257,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11445:32:0", + "src": "10439:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11424:53:0" + "src": "10418:53:0" }, { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1069, + "id": 1022, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11487:10:0", + "referencedDeclaration": 1015, + "src": "10481:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13938,12 +13294,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1072, + "id": 1025, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "11515:13:0", + "referencedDeclaration": 67, + "src": "10509:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13959,32 +13315,32 @@ ], "expression": { "argumentTypes": null, - "id": 1070, + "id": 1023, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11500:10:0", + "referencedDeclaration": 1015, + "src": "10494:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1071, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "11500:14:0", + "referencedDeclaration": 1281, + "src": "10494:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1073, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -13992,38 +13348,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11500:29:0", + "src": "10494:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11487:42:0", + "src": "10481:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1075, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "11487:42:0" + "src": "10481:42:0" }, { "expression": { "argumentTypes": null, - "id": 1081, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1076, + "id": 1029, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11539:10:0", + "referencedDeclaration": 1015, + "src": "10533:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14036,12 +13392,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1079, + "id": 1032, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "11567:22:0", + "referencedDeclaration": 69, + "src": "10561:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14057,32 +13413,32 @@ ], "expression": { "argumentTypes": null, - "id": 1077, + "id": 1030, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11552:10:0", + "referencedDeclaration": 1015, + "src": "10546:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11552:14:0", + "referencedDeclaration": 1305, + "src": "10546:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1080, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, @@ -14090,34 +13446,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11552:38:0", + "src": "10546:38:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11539:51:0", + "src": "10533:51:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1082, + "id": 1035, "nodeType": "ExpressionStatement", - "src": "11539:51:0" + "src": "10533:51:0" }, { "assignments": [ - 1084 + 1037 ], "declarations": [ { "constant": false, - "id": 1084, + "id": 1037, "name": "ethPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11710:22:0", + "scope": 1066, + "src": "10704:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14125,10 +13481,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1083, + "id": 1036, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11710:7:0", + "src": "10704:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14138,18 +13494,18 @@ "visibility": "internal" } ], - "id": 1090, + "id": 1043, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1087, + "id": 1040, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "11754:11:0", + "referencedDeclaration": 58, + "src": "10748:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14157,12 +13513,12 @@ }, { "argumentTypes": null, - "id": 1088, + "id": 1041, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11767:9:0", + "referencedDeclaration": 65, + "src": "10761:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14182,32 +13538,32 @@ ], "expression": { "argumentTypes": null, - "id": 1085, + "id": 1038, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11735:10:0", + "referencedDeclaration": 1015, + "src": "10729:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1086, + "id": 1039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "11735:18:0", + "referencedDeclaration": 1344, + "src": "10729:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1089, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -14215,27 +13571,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11735:42:0", + "src": "10729:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11710:67:0" + "src": "10704:67:0" }, { "assignments": [ - 1092 + 1045 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1045, "name": "ethPPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11788:14:0", + "scope": 1066, + "src": "10782:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14243,10 +13599,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1091, + "id": 1044, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11788:7:0", + "src": "10782:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14256,7 +13612,7 @@ "visibility": "internal" } ], - "id": 1100, + "id": 1053, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14266,26 +13622,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1095, + "id": 1048, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "11824:7:0", + "referencedDeclaration": 73, + "src": "10818:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1097, + "id": 1050, "indexExpression": { "argumentTypes": null, - "id": 1096, + "id": 1049, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11832:3:0", + "referencedDeclaration": 1006, + "src": "10826:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14296,21 +13652,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11824:12:0", + "src": "10818:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1098, + "id": 1051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11824:19:0", + "referencedDeclaration": 82, + "src": "10818:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14326,32 +13682,32 @@ ], "expression": { "argumentTypes": null, - "id": 1093, + "id": 1046, "name": "ethPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "11805:14:0", + "referencedDeclaration": 1037, + "src": "10799:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1094, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "11805:18:0", + "referencedDeclaration": 1243, + "src": "10799:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1099, + "id": 1052, "isConstant": false, "isLValue": false, "isPure": false, @@ -14359,27 +13715,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11805:39:0", + "src": "10799:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11788:56:0" + "src": "10782:56:0" }, { "assignments": [ - 1102 + 1055 ], "declarations": [ { "constant": false, - "id": 1102, + "id": 1055, "name": "ethVal", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11854:14:0", + "scope": 1066, + "src": "10848:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14387,10 +13743,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1101, + "id": 1054, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11854:7:0", + "src": "10848:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14400,7 +13756,7 @@ "visibility": "internal" } ], - "id": 1109, + "id": 1062, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14410,7 +13766,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1107, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": true, @@ -14418,14 +13774,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1105, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11882:2:0", + "src": "10876:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -14437,18 +13793,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1106, + "id": 1059, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11886:9:0", + "referencedDeclaration": 65, + "src": "10880:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11882:13:0", + "src": "10876:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14464,32 +13820,32 @@ ], "expression": { "argumentTypes": null, - "id": 1103, + "id": 1056, "name": "ethPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "11871:6:0", + "referencedDeclaration": 1045, + "src": "10865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1104, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "11871:10:0", + "referencedDeclaration": 1261, + "src": "10865:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1108, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -14497,38 +13853,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11871:25:0", + "src": "10865:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11854:42:0" + "src": "10848:42:0" }, { "expression": { "argumentTypes": null, - "id": 1110, + "id": 1063, "name": "ethVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "11914:6:0", + "referencedDeclaration": 1055, + "src": "10908:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1060, - "id": 1111, + "functionReturnParameters": 1013, + "id": 1064, "nodeType": "Return", - "src": "11907:13:0" + "src": "10901:13:0" } ] }, "documentation": null, - "id": 1113, + "id": 1066, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -14537,49 +13893,49 @@ "arguments": [ { "argumentTypes": null, - "id": 1056, + "id": 1009, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11253:3:0", + "referencedDeclaration": 1006, + "src": "10247:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 1057, + "id": 1010, "modifierName": { "argumentTypes": null, - "id": 1055, + "id": 1008, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "11240:12:0", + "referencedDeclaration": 305, + "src": "10234:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "11240:17:0" + "src": "10234:17:0" } ], "name": "calculateTotalWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1054, + "id": 1007, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1053, + "id": 1006, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11211:11:0", + "scope": 1066, + "src": "10205:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14587,10 +13943,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 1005, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11211:7:0", + "src": "10205:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14600,20 +13956,20 @@ "visibility": "internal" } ], - "src": "11210:13:0" + "src": "10204:13:0" }, "payable": false, "returnParameters": { - "id": 1060, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1059, + "id": 1012, "name": "", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11267:7:0", + "scope": 1066, + "src": "10261:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14621,10 +13977,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1058, + "id": 1011, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11267:7:0", + "src": "10261:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14634,32 +13990,32 @@ "visibility": "internal" } ], - "src": "11266:9:0" + "src": "10260:9:0" }, - "scope": 1194, - "src": "11169:758:0", + "scope": 1146, + "src": "10163:758:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1163, + "id": 1115, "nodeType": "Block", - "src": "12042:418:0", + "src": "11036:403:0", "statements": [ { "assignments": [ - 1123 + 1076 ], "declarations": [ { "constant": false, - "id": 1123, + "id": 1076, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12052:18:0", + "scope": 1116, + "src": "11046:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14667,10 +14023,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1122, + "id": 1075, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12052:7:0", + "src": "11046:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14680,61 +14036,45 @@ "visibility": "internal" } ], - "id": 1133, + "id": 1085, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1128, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "12102:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1130, - "indexExpression": { - "argumentTypes": null, - "id": 1129, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12109:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12102:13:0", + "id": 1081, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "11096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 1083, + "indexExpression": { + "argumentTypes": null, + "id": 1082, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1070, + "src": "11103:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1131, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "12102:28:0", + "nodeType": "IndexAccess", + "src": "11096:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14753,12 +14093,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1125, + "id": 1078, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12091:5:0", + "referencedDeclaration": 1070, + "src": "11085:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14772,18 +14112,18 @@ "typeString": "address" } ], - "id": 1124, + "id": 1077, "name": "checkERC20Balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 452, - "src": "12073:17:0", + "referencedDeclaration": 408, + "src": "11067:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1126, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -14791,27 +14131,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:24:0", + "src": "11067:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1127, + "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "12073:28:0", + "referencedDeclaration": 1305, + "src": "11067:28:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1132, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, @@ -14819,27 +14159,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:58:0", + "src": "11067:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12052:79:0" + "src": "11046:64:0" }, { "assignments": [ - 1135 + 1087 ], "declarations": [ { "constant": false, - "id": 1135, + "id": 1087, "name": "tokPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12243:22:0", + "scope": 1116, + "src": "11222:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14847,10 +14187,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1134, + "id": 1086, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12243:7:0", + "src": "11222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14860,18 +14200,18 @@ "visibility": "internal" } ], - "id": 1141, + "id": 1093, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1138, + "id": 1090, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "12287:11:0", + "referencedDeclaration": 58, + "src": "11266:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14879,12 +14219,12 @@ }, { "argumentTypes": null, - "id": 1139, + "id": 1091, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12300:9:0", + "referencedDeclaration": 65, + "src": "11279:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14904,32 +14244,32 @@ ], "expression": { "argumentTypes": null, - "id": 1136, + "id": 1088, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1123, - "src": "12268:10:0", + "referencedDeclaration": 1076, + "src": "11247:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1137, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12268:18:0", + "referencedDeclaration": 1344, + "src": "11247:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1140, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": false, @@ -14937,27 +14277,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12268:42:0", + "src": "11247:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12243:67:0" + "src": "11222:67:0" }, { "assignments": [ - 1143 + 1095 ], "declarations": [ { "constant": false, - "id": 1143, + "id": 1095, "name": "tokPPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12321:14:0", + "scope": 1116, + "src": "11300:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14965,10 +14305,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1142, + "id": 1094, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12321:7:0", + "src": "11300:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14978,7 +14318,7 @@ "visibility": "internal" } ], - "id": 1151, + "id": 1103, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14988,26 +14328,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1146, + "id": 1098, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "12357:7:0", + "referencedDeclaration": 73, + "src": "11336:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1148, + "id": 1100, "indexExpression": { "argumentTypes": null, - "id": 1147, + "id": 1099, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1115, - "src": "12365:3:0", + "referencedDeclaration": 1068, + "src": "11344:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15018,21 +14358,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12357:12:0", + "src": "11336:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1149, + "id": 1101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "12357:19:0", + "referencedDeclaration": 82, + "src": "11336:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15048,32 +14388,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1096, "name": "tokPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1135, - "src": "12338:14:0", + "referencedDeclaration": 1087, + "src": "11317:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1145, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "12338:18:0", + "referencedDeclaration": 1243, + "src": "11317:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1150, + "id": 1102, "isConstant": false, "isLValue": false, "isPure": false, @@ -15081,27 +14421,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12338:39:0", + "src": "11317:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12321:56:0" + "src": "11300:56:0" }, { "assignments": [ - 1153 + 1105 ], "declarations": [ { "constant": false, - "id": 1153, + "id": 1105, "name": "tokVal", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12387:14:0", + "scope": 1116, + "src": "11366:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15109,10 +14449,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1152, + "id": 1104, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12387:7:0", + "src": "11366:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15122,7 +14462,7 @@ "visibility": "internal" } ], - "id": 1160, + "id": 1112, "initialValue": { "argumentTypes": null, "arguments": [ @@ -15132,7 +14472,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1158, + "id": 1110, "isConstant": false, "isLValue": false, "isPure": true, @@ -15140,14 +14480,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1156, + "id": 1108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12415:2:0", + "src": "11394:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -15159,18 +14499,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1157, + "id": 1109, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12419:9:0", + "referencedDeclaration": 65, + "src": "11398:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12415:13:0", + "src": "11394:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15186,32 +14526,32 @@ ], "expression": { "argumentTypes": null, - "id": 1154, + "id": 1106, "name": "tokPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "12404:6:0", + "referencedDeclaration": 1095, + "src": "11383:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1155, + "id": 1107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "12404:10:0", + "referencedDeclaration": 1261, + "src": "11383:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1159, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -15219,38 +14559,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12404:25:0", + "src": "11383:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12387:42:0" + "src": "11366:42:0" }, { "expression": { "argumentTypes": null, - "id": 1161, + "id": 1113, "name": "tokVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1153, - "src": "12447:6:0", + "referencedDeclaration": 1105, + "src": "11426:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1121, - "id": 1162, + "functionReturnParameters": 1074, + "id": 1114, "nodeType": "Return", - "src": "12440:13:0" + "src": "11419:13:0" } ] }, "documentation": null, - "id": 1164, + "id": 1116, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15258,16 +14598,16 @@ "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1118, + "id": 1071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1115, + "id": 1068, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11981:11:0", + "scope": 1116, + "src": "10975:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15275,10 +14615,10 @@ "typeString": "address" }, "typeName": { - "id": 1114, + "id": 1067, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11981:7:0", + "src": "10975:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15289,11 +14629,11 @@ }, { "constant": false, - "id": 1117, + "id": 1070, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11994:13:0", + "scope": 1116, + "src": "10988:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15301,10 +14641,10 @@ "typeString": "address" }, "typeName": { - "id": 1116, + "id": 1069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11994:7:0", + "src": "10988:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15314,20 +14654,20 @@ "visibility": "internal" } ], - "src": "11980:28:0" + "src": "10974:28:0" }, "payable": false, "returnParameters": { - "id": 1121, + "id": 1074, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1073, "name": "", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12033:7:0", + "scope": 1116, + "src": "11027:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15335,10 +14675,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1119, + "id": 1072, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12033:7:0", + "src": "11027:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15348,19 +14688,19 @@ "visibility": "internal" } ], - "src": "12032:9:0" + "src": "11026:9:0" }, - "scope": 1194, - "src": "11934:526:0", + "scope": 1146, + "src": "10928:511:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1174, + "id": 1126, "nodeType": "Block", - "src": "12550:65:0", + "src": "11529:65:0", "statements": [ { "expression": { @@ -15368,12 +14708,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1171, + "id": 1123, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "12585:22:0", + "referencedDeclaration": 69, + "src": "11564:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15389,32 +14729,32 @@ ], "expression": { "argumentTypes": null, - "id": 1169, + "id": 1121, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "12567:13:0", + "referencedDeclaration": 67, + "src": "11546:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1170, + "id": 1122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "12567:17:0", + "referencedDeclaration": 1281, + "src": "11546:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1172, + "id": 1124, "isConstant": false, "isLValue": false, "isPure": false, @@ -15422,21 +14762,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12567:41:0", + "src": "11546:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1168, - "id": 1173, + "functionReturnParameters": 1120, + "id": 1125, "nodeType": "Return", - "src": "12560:48:0" + "src": "11539:48:0" } ] }, "documentation": null, - "id": 1175, + "id": 1127, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15444,23 +14784,23 @@ "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1165, + "id": 1117, "nodeType": "ParameterList", "parameters": [], - "src": "12514:2:0" + "src": "11493:2:0" }, "payable": false, "returnParameters": { - "id": 1168, + "id": 1120, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1167, + "id": 1119, "name": "", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "12541:7:0", + "scope": 1127, + "src": "11520:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15468,10 +14808,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1166, + "id": 1118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12541:7:0", + "src": "11520:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15481,19 +14821,19 @@ "visibility": "internal" } ], - "src": "12540:9:0" + "src": "11519:9:0" }, - "scope": 1194, - "src": "12466:149:0", + "scope": 1146, + "src": "11445:149:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1192, + "id": 1144, "nodeType": "Block", - "src": "12737:39:0", + "src": "11716:39:0", "statements": [ { "expression": { @@ -15501,12 +14841,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1179, - "src": "12764:1:0", + "referencedDeclaration": 1131, + "src": "11743:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15514,12 +14854,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1141, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1181, - "src": "12767:1:0", + "referencedDeclaration": 1133, + "src": "11746:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15539,32 +14879,32 @@ ], "expression": { "argumentTypes": null, - "id": 1186, + "id": 1138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "12754:1:0", + "referencedDeclaration": 1129, + "src": "11733:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1187, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12754:9:0", + "referencedDeclaration": 1344, + "src": "11733:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1190, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -15572,21 +14912,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12754:15:0", + "src": "11733:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1185, - "id": 1191, + "functionReturnParameters": 1137, + "id": 1143, "nodeType": "Return", - "src": "12747:22:0" + "src": "11726:22:0" } ] }, "documentation": null, - "id": 1193, + "id": 1145, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15594,16 +14934,16 @@ "name": "delegatePercent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1182, + "id": 1134, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1177, + "id": 1129, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12670:9:0", + "scope": 1145, + "src": "11649:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15611,10 +14951,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1176, + "id": 1128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12670:7:0", + "src": "11649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15625,11 +14965,11 @@ }, { "constant": false, - "id": 1179, + "id": 1131, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12681:9:0", + "scope": 1145, + "src": "11660:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15637,10 +14977,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1178, + "id": 1130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12681:7:0", + "src": "11660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15651,11 +14991,11 @@ }, { "constant": false, - "id": 1181, + "id": 1133, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12692:9:0", + "scope": 1145, + "src": "11671:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15663,10 +15003,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1180, + "id": 1132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12692:7:0", + "src": "11671:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15676,20 +15016,20 @@ "visibility": "internal" } ], - "src": "12669:33:0" + "src": "11648:33:0" }, "payable": false, "returnParameters": { - "id": 1185, + "id": 1137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 1136, "name": "", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12728:7:0", + "scope": 1145, + "src": "11707:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15697,10 +15037,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1183, + "id": 1135, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12728:7:0", + "src": "11707:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15710,17 +15050,17 @@ "visibility": "internal" } ], - "src": "12727:9:0" + "src": "11706:9:0" }, - "scope": 1194, - "src": "12645:131:0", + "scope": 1146, + "src": "11624:131:0", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1394, - "src": "989:11789:0" + "scope": 1346, + "src": "444:11313:0" }, { "baseContracts": [], @@ -15728,20 +15068,20 @@ "contractKind": "contract", "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", "fullyImplemented": false, - "id": 1221, + "id": 1173, "linearizedBaseContracts": [ - 1221 + 1173 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1196, + "id": 1148, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 1221, - "src": "12932:26:0", + "scope": 1173, + "src": "11911:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15749,10 +15089,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1195, + "id": 1147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12932:7:0", + "src": "11911:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15764,7 +15104,7 @@ { "body": null, "documentation": null, - "id": 1203, + "id": 1155, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -15772,16 +15112,16 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1199, + "id": 1151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1198, + "id": 1150, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "12981:11:0", + "scope": 1155, + "src": "11960:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15789,10 +15129,10 @@ "typeString": "address" }, "typeName": { - "id": 1197, + "id": 1149, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12981:7:0", + "src": "11960:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15802,20 +15142,20 @@ "visibility": "internal" } ], - "src": "12980:13:0" + "src": "11959:13:0" }, "payable": false, "returnParameters": { - "id": 1202, + "id": 1154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1201, + "id": 1153, "name": "", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "13019:7:0", + "scope": 1155, + "src": "11998:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15823,10 +15163,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1200, + "id": 1152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13019:7:0", + "src": "11998:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15836,10 +15176,10 @@ "visibility": "internal" } ], - "src": "13018:9:0" + "src": "11997:9:0" }, - "scope": 1221, - "src": "12962:66:0", + "scope": 1173, + "src": "11941:66:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -15847,7 +15187,7 @@ { "body": null, "documentation": null, - "id": 1212, + "id": 1164, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -15855,16 +15195,16 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1208, + "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1205, + "id": 1157, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13049:10:0", + "scope": 1164, + "src": "12028:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15872,10 +15212,10 @@ "typeString": "address" }, "typeName": { - "id": 1204, + "id": 1156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13049:7:0", + "src": "12028:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15886,11 +15226,11 @@ }, { "constant": false, - "id": 1207, + "id": 1159, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13061:13:0", + "scope": 1164, + "src": "12040:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15898,10 +15238,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1158, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13061:7:0", + "src": "12040:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15911,20 +15251,20 @@ "visibility": "internal" } ], - "src": "13048:27:0" + "src": "12027:27:0" }, "payable": false, "returnParameters": { - "id": 1211, + "id": 1163, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1210, + "id": 1162, "name": "", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13092:4:0", + "scope": 1164, + "src": "12071:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15932,10 +15272,10 @@ "typeString": "bool" }, "typeName": { - "id": 1209, + "id": 1161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13092:4:0", + "src": "12071:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15945,10 +15285,10 @@ "visibility": "internal" } ], - "src": "13091:6:0" + "src": "12070:6:0" }, - "scope": 1221, - "src": "13031:67:0", + "scope": 1173, + "src": "12010:67:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -15956,21 +15296,21 @@ { "anonymous": false, "documentation": null, - "id": 1220, + "id": 1172, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1219, + "id": 1171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1214, + "id": 1166, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13116:20:0", + "scope": 1172, + "src": "12095:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15978,10 +15318,10 @@ "typeString": "address" }, "typeName": { - "id": 1213, + "id": 1165, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13116:7:0", + "src": "12095:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15992,12 +15332,12 @@ }, { "constant": false, - "id": 1216, + "id": 1168, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13138:18:0", + "scope": 1172, + "src": "12117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16005,10 +15345,10 @@ "typeString": "address" }, "typeName": { - "id": 1215, + "id": 1167, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13138:7:0", + "src": "12117:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16019,12 +15359,12 @@ }, { "constant": false, - "id": 1218, + "id": 1170, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13158:13:0", + "scope": 1172, + "src": "12137:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16032,10 +15372,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1217, + "id": 1169, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13158:7:0", + "src": "12137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16045,13 +15385,13 @@ "visibility": "internal" } ], - "src": "13115:57:0" + "src": "12094:57:0" }, - "src": "13101:72:0" + "src": "12080:72:0" } ], - "scope": 1394, - "src": "12908:267:0" + "scope": 1346, + "src": "11887:267:0" }, { "baseContracts": [ @@ -16059,31 +15399,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1222, + "id": 1174, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1221, - "src": "13285:10:0", + "referencedDeclaration": 1173, + "src": "12264:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$1221", + "typeIdentifier": "t_contract$_ERC20Basic_$1173", "typeString": "contract ERC20Basic" } }, - "id": 1223, + "id": 1175, "nodeType": "InheritanceSpecifier", - "src": "13285:10:0" + "src": "12264:10:0" } ], "contractDependencies": [ - 1221 + 1173 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 1261, + "id": 1213, "linearizedBaseContracts": [ - 1261, - 1221 + 1213, + 1173 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -16091,7 +15431,7 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1184, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -16099,16 +15439,16 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1225, + "id": 1177, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13319:13:0", + "scope": 1184, + "src": "12298:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16116,10 +15456,10 @@ "typeString": "address" }, "typeName": { - "id": 1224, + "id": 1176, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13319:7:0", + "src": "12298:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16130,11 +15470,11 @@ }, { "constant": false, - "id": 1227, + "id": 1179, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13334:15:0", + "scope": 1184, + "src": "12313:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16142,10 +15482,10 @@ "typeString": "address" }, "typeName": { - "id": 1226, + "id": 1178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13334:7:0", + "src": "12313:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16155,20 +15495,20 @@ "visibility": "internal" } ], - "src": "13318:32:0" + "src": "12297:32:0" }, "payable": false, "returnParameters": { - "id": 1231, + "id": 1183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1182, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13376:7:0", + "scope": 1184, + "src": "12355:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16176,10 +15516,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1181, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13376:7:0", + "src": "12355:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16189,10 +15529,10 @@ "visibility": "internal" } ], - "src": "13375:9:0" + "src": "12354:9:0" }, - "scope": 1261, - "src": "13300:85:0", + "scope": 1213, + "src": "12279:85:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -16200,7 +15540,7 @@ { "body": null, "documentation": null, - "id": 1243, + "id": 1195, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -16208,16 +15548,16 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1239, + "id": 1191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1186, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13410:12:0", + "scope": 1195, + "src": "12389:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16225,10 +15565,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13410:7:0", + "src": "12389:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16239,11 +15579,11 @@ }, { "constant": false, - "id": 1236, + "id": 1188, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13424:10:0", + "scope": 1195, + "src": "12403:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16251,10 +15591,10 @@ "typeString": "address" }, "typeName": { - "id": 1235, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13424:7:0", + "src": "12403:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16265,11 +15605,11 @@ }, { "constant": false, - "id": 1238, + "id": 1190, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13436:13:0", + "scope": 1195, + "src": "12415:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16277,10 +15617,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1237, + "id": 1189, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13436:7:0", + "src": "12415:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16290,20 +15630,20 @@ "visibility": "internal" } ], - "src": "13409:41:0" + "src": "12388:41:0" }, "payable": false, "returnParameters": { - "id": 1242, + "id": 1194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1193, "name": "", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13467:4:0", + "scope": 1195, + "src": "12446:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16311,10 +15651,10 @@ "typeString": "bool" }, "typeName": { - "id": 1240, + "id": 1192, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13467:4:0", + "src": "12446:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16324,10 +15664,10 @@ "visibility": "internal" } ], - "src": "13466:6:0" + "src": "12445:6:0" }, - "scope": 1261, - "src": "13388:85:0", + "scope": 1213, + "src": "12367:85:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -16335,7 +15675,7 @@ { "body": null, "documentation": null, - "id": 1252, + "id": 1204, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -16343,16 +15683,16 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1248, + "id": 1200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1245, + "id": 1197, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13493:15:0", + "scope": 1204, + "src": "12472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16360,10 +15700,10 @@ "typeString": "address" }, "typeName": { - "id": 1244, + "id": 1196, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13493:7:0", + "src": "12472:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16374,11 +15714,11 @@ }, { "constant": false, - "id": 1247, + "id": 1199, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13510:13:0", + "scope": 1204, + "src": "12489:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16386,10 +15726,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1246, + "id": 1198, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13510:7:0", + "src": "12489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16399,20 +15739,20 @@ "visibility": "internal" } ], - "src": "13492:32:0" + "src": "12471:32:0" }, "payable": false, "returnParameters": { - "id": 1251, + "id": 1203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1202, "name": "", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13541:4:0", + "scope": 1204, + "src": "12520:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16420,10 +15760,10 @@ "typeString": "bool" }, "typeName": { - "id": 1249, + "id": 1201, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13541:4:0", + "src": "12520:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16433,10 +15773,10 @@ "visibility": "internal" } ], - "src": "13540:6:0" + "src": "12519:6:0" }, - "scope": 1261, - "src": "13476:71:0", + "scope": 1213, + "src": "12455:71:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -16444,21 +15784,21 @@ { "anonymous": false, "documentation": null, - "id": 1260, + "id": 1212, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1259, + "id": 1211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1254, + "id": 1206, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13565:21:0", + "scope": 1212, + "src": "12544:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16466,10 +15806,10 @@ "typeString": "address" }, "typeName": { - "id": 1253, + "id": 1205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13565:7:0", + "src": "12544:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16480,12 +15820,12 @@ }, { "constant": false, - "id": 1256, + "id": 1208, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13588:23:0", + "scope": 1212, + "src": "12567:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16493,10 +15833,10 @@ "typeString": "address" }, "typeName": { - "id": 1255, + "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13588:7:0", + "src": "12567:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16507,12 +15847,12 @@ }, { "constant": false, - "id": 1258, + "id": 1210, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13613:13:0", + "scope": 1212, + "src": "12592:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16520,10 +15860,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1257, + "id": 1209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13613:7:0", + "src": "12592:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16533,13 +15873,13 @@ "visibility": "internal" } ], - "src": "13564:63:0" + "src": "12543:63:0" }, - "src": "13550:78:0" + "src": "12529:78:0" } ], - "scope": 1394, - "src": "13267:363:0" + "scope": 1346, + "src": "12246:363:0" }, { "baseContracts": [], @@ -16547,31 +15887,31 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 1393, + "id": 1345, "linearizedBaseContracts": [ - 1393 + 1345 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1290, + "id": 1242, "nodeType": "Block", - "src": "13817:90:0", + "src": "12796:90:0", "statements": [ { "assignments": [ - 1271 + 1223 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1223, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13827:9:0", + "scope": 1243, + "src": "12806:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16579,10 +15919,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 1222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13827:7:0", + "src": "12806:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16592,26 +15932,26 @@ "visibility": "internal" } ], - "id": 1275, + "id": 1227, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1274, + "id": 1226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1272, + "id": 1224, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13839:1:0", + "referencedDeclaration": 1215, + "src": "12818:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16621,25 +15961,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1273, + "id": 1225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13843:1:0", + "referencedDeclaration": 1217, + "src": "12822:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13839:5:0", + "src": "12818:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13827:17:0" + "src": "12806:17:0" }, { "expression": { @@ -16651,7 +15991,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1285, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, @@ -16662,19 +16002,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1279, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1277, + "id": 1229, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13861:1:0", + "referencedDeclaration": 1215, + "src": "12840:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16685,14 +16025,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1278, + "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13866:1:0", + "src": "12845:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -16700,7 +16040,7 @@ }, "value": "0" }, - "src": "13861:6:0", + "src": "12840:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16714,7 +16054,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1284, + "id": 1236, "isConstant": false, "isLValue": false, "isPure": false, @@ -16725,19 +16065,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1282, + "id": 1234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1280, + "id": 1232, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13871:1:0", + "referencedDeclaration": 1223, + "src": "12850:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16747,18 +16087,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1281, + "id": 1233, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13875:1:0", + "referencedDeclaration": 1215, + "src": "12854:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:5:0", + "src": "12850:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16768,24 +16108,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1283, + "id": 1235, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13880:1:0", + "referencedDeclaration": 1217, + "src": "12859:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:10:0", + "src": "12850:10:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13861:20:0", + "src": "12840:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16799,18 +16139,18 @@ "typeString": "bool" } ], - "id": 1276, + "id": 1228, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "13854:6:0", + "referencedDeclaration": 1489, + "src": "12833:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, @@ -16818,39 +16158,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13854:28:0", + "src": "12833:28:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 1239, "nodeType": "ExpressionStatement", - "src": "13854:28:0" + "src": "12833:28:0" }, { "expression": { "argumentTypes": null, - "id": 1288, + "id": 1240, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13899:1:0", + "referencedDeclaration": 1223, + "src": "12878:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1269, - "id": 1289, + "functionReturnParameters": 1221, + "id": 1241, "nodeType": "Return", - "src": "13892:8:0" + "src": "12871:8:0" } ] }, "documentation": null, - "id": 1291, + "id": 1243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -16858,16 +16198,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 1266, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1263, + "id": 1215, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13759:9:0", + "scope": 1243, + "src": "12738:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16875,10 +16215,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1214, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13759:7:0", + "src": "12738:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16889,11 +16229,11 @@ }, { "constant": false, - "id": 1265, + "id": 1217, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13770:9:0", + "scope": 1243, + "src": "12749:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16901,10 +16241,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1264, + "id": 1216, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13770:7:0", + "src": "12749:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16914,20 +16254,20 @@ "visibility": "internal" } ], - "src": "13758:22:0" + "src": "12737:22:0" }, "payable": false, "returnParameters": { - "id": 1269, + "id": 1221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1268, + "id": 1220, "name": "", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13808:7:0", + "scope": 1243, + "src": "12787:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16935,10 +16275,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1267, + "id": 1219, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13808:7:0", + "src": "12787:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16948,32 +16288,32 @@ "visibility": "internal" } ], - "src": "13807:9:0" + "src": "12786:9:0" }, - "scope": 1393, - "src": "13746:161:0", + "scope": 1345, + "src": "12725:161:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1308, + "id": 1260, "nodeType": "Block", - "src": "13984:216:0", + "src": "12963:216:0", "statements": [ { "assignments": [ - 1301 + 1253 ], "declarations": [ { "constant": false, - "id": 1301, + "id": 1253, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "14072:9:0", + "scope": 1261, + "src": "13051:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16981,10 +16321,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1300, + "id": 1252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14072:7:0", + "src": "13051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16994,26 +16334,26 @@ "visibility": "internal" } ], - "id": 1305, + "id": 1257, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1304, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1302, + "id": 1254, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1293, - "src": "14084:1:0", + "referencedDeclaration": 1245, + "src": "13063:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17023,49 +16363,49 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1303, + "id": 1255, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1295, - "src": "14088:1:0", + "referencedDeclaration": 1247, + "src": "13067:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14084:5:0", + "src": "13063:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14072:17:0" + "src": "13051:17:0" }, { "expression": { "argumentTypes": null, - "id": 1306, + "id": 1258, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "14192:1:0", + "referencedDeclaration": 1253, + "src": "13171:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1299, - "id": 1307, + "functionReturnParameters": 1251, + "id": 1259, "nodeType": "Return", - "src": "14185:8:0" + "src": "13164:8:0" } ] }, "documentation": null, - "id": 1309, + "id": 1261, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17073,16 +16413,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 1296, + "id": 1248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1293, + "id": 1245, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13926:9:0", + "scope": 1261, + "src": "12905:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17090,10 +16430,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1292, + "id": 1244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13926:7:0", + "src": "12905:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17104,11 +16444,11 @@ }, { "constant": false, - "id": 1295, + "id": 1247, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13937:9:0", + "scope": 1261, + "src": "12916:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17116,10 +16456,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1294, + "id": 1246, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13937:7:0", + "src": "12916:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17129,20 +16469,20 @@ "visibility": "internal" } ], - "src": "13925:22:0" + "src": "12904:22:0" }, "payable": false, "returnParameters": { - "id": 1299, + "id": 1251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1250, "name": "", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13975:7:0", + "scope": 1261, + "src": "12954:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17150,10 +16490,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1297, + "id": 1249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13975:7:0", + "src": "12954:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17163,19 +16503,19 @@ "visibility": "internal" } ], - "src": "13974:9:0" + "src": "12953:9:0" }, - "scope": 1393, - "src": "13913:287:0", + "scope": 1345, + "src": "12892:287:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1328, + "id": 1280, "nodeType": "Block", - "src": "14277:53:0", + "src": "13256:53:0", "statements": [ { "expression": { @@ -17187,19 +16527,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1321, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1319, + "id": 1271, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14294:1:0", + "referencedDeclaration": 1265, + "src": "13273:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17209,18 +16549,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 1320, + "id": 1272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14299:1:0", + "referencedDeclaration": 1263, + "src": "13278:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14294:6:0", + "src": "13273:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17234,18 +16574,18 @@ "typeString": "bool" } ], - "id": 1318, + "id": 1270, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14287:6:0", + "referencedDeclaration": 1489, + "src": "13266:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1322, + "id": 1274, "isConstant": false, "isLValue": false, "isPure": false, @@ -17253,15 +16593,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14287:14:0", + "src": "13266:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1323, + "id": 1275, "nodeType": "ExpressionStatement", - "src": "14287:14:0" + "src": "13266:14:0" }, { "expression": { @@ -17270,19 +16610,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1326, + "id": 1278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1324, + "id": 1276, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14318:1:0", + "referencedDeclaration": 1263, + "src": "13297:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17292,32 +16632,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1325, + "id": 1277, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14322:1:0", + "referencedDeclaration": 1265, + "src": "13301:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14318:5:0", + "src": "13297:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1317, - "id": 1327, + "functionReturnParameters": 1269, + "id": 1279, "nodeType": "Return", - "src": "14311:12:0" + "src": "13290:12:0" } ] }, "documentation": null, - "id": 1329, + "id": 1281, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17325,16 +16665,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 1314, + "id": 1266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1311, + "id": 1263, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14219:9:0", + "scope": 1281, + "src": "13198:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17342,10 +16682,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1310, + "id": 1262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14219:7:0", + "src": "13198:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17356,11 +16696,11 @@ }, { "constant": false, - "id": 1313, + "id": 1265, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14230:9:0", + "scope": 1281, + "src": "13209:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17368,10 +16708,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1312, + "id": 1264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14230:7:0", + "src": "13209:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17381,20 +16721,20 @@ "visibility": "internal" } ], - "src": "14218:22:0" + "src": "13197:22:0" }, "payable": false, "returnParameters": { - "id": 1317, + "id": 1269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 1268, "name": "", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14268:7:0", + "scope": 1281, + "src": "13247:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17402,10 +16742,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1315, + "id": 1267, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14268:7:0", + "src": "13247:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17415,32 +16755,32 @@ "visibility": "internal" } ], - "src": "14267:9:0" + "src": "13246:9:0" }, - "scope": 1393, - "src": "14206:124:0", + "scope": 1345, + "src": "13185:124:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1352, + "id": 1304, "nodeType": "Block", - "src": "14407:76:0", + "src": "13386:76:0", "statements": [ { "assignments": [ - 1339 + 1291 ], "declarations": [ { "constant": false, - "id": 1339, + "id": 1291, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14417:9:0", + "scope": 1305, + "src": "13396:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17448,10 +16788,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1338, + "id": 1290, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14417:7:0", + "src": "13396:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17461,26 +16801,26 @@ "visibility": "internal" } ], - "id": 1343, + "id": 1295, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1342, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1340, + "id": 1292, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14429:1:0", + "referencedDeclaration": 1283, + "src": "13408:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17490,25 +16830,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1341, + "id": 1293, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "14433:1:0", + "referencedDeclaration": 1285, + "src": "13412:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14429:5:0", + "src": "13408:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14417:17:0" + "src": "13396:17:0" }, { "expression": { @@ -17520,19 +16860,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1347, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1345, + "id": 1297, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14451:1:0", + "referencedDeclaration": 1291, + "src": "13430:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17542,18 +16882,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1346, + "id": 1298, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14456:1:0", + "referencedDeclaration": 1283, + "src": "13435:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14451:6:0", + "src": "13430:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17567,18 +16907,18 @@ "typeString": "bool" } ], - "id": 1344, + "id": 1296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14444:6:0", + "referencedDeclaration": 1489, + "src": "13423:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1348, + "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, @@ -17586,39 +16926,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14444:14:0", + "src": "13423:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1349, + "id": 1301, "nodeType": "ExpressionStatement", - "src": "14444:14:0" + "src": "13423:14:0" }, { "expression": { "argumentTypes": null, - "id": 1350, + "id": 1302, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14475:1:0", + "referencedDeclaration": 1291, + "src": "13454:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1337, - "id": 1351, + "functionReturnParameters": 1289, + "id": 1303, "nodeType": "Return", - "src": "14468:8:0" + "src": "13447:8:0" } ] }, "documentation": null, - "id": 1353, + "id": 1305, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17626,16 +16966,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 1334, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1331, + "id": 1283, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14349:9:0", + "scope": 1305, + "src": "13328:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17643,10 +16983,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1330, + "id": 1282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14349:7:0", + "src": "13328:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17657,11 +16997,11 @@ }, { "constant": false, - "id": 1333, + "id": 1285, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14360:9:0", + "scope": 1305, + "src": "13339:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17669,10 +17009,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14360:7:0", + "src": "13339:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17682,20 +17022,20 @@ "visibility": "internal" } ], - "src": "14348:22:0" + "src": "13327:22:0" }, "payable": false, "returnParameters": { - "id": 1337, + "id": 1289, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1336, + "id": 1288, "name": "", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14398:7:0", + "scope": 1305, + "src": "13377:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17703,10 +17043,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1335, + "id": 1287, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14398:7:0", + "src": "13377:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17716,32 +17056,32 @@ "visibility": "internal" } ], - "src": "14397:9:0" + "src": "13376:9:0" }, - "scope": 1393, - "src": "14336:147:0", + "scope": 1345, + "src": "13315:147:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1391, + "id": 1343, "nodeType": "Block", - "src": "14768:257:0", + "src": "13747:257:0", "statements": [ { "assignments": [ - 1365 + 1317 ], "declarations": [ { "constant": false, - "id": 1365, + "id": 1317, "name": "_numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14826:18:0", + "scope": 1344, + "src": "13805:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17749,10 +17089,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1364, + "id": 1316, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14826:7:0", + "src": "13805:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17762,18 +17102,18 @@ "visibility": "internal" } ], - "id": 1375, + "id": 1327, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1367, + "id": 1319, "name": "numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1355, - "src": "14851:9:0", + "referencedDeclaration": 1307, + "src": "13830:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17785,7 +17125,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1373, + "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, @@ -17793,14 +17133,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1368, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14862:2:0", + "src": "13841:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -17819,19 +17159,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1371, + "id": 1323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1369, + "id": 1321, "name": "precision", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "14869:9:0", + "referencedDeclaration": 1311, + "src": "13848:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17842,14 +17182,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1370, + "id": 1322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14879:1:0", + "src": "13858:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -17857,27 +17197,27 @@ }, "value": "1" }, - "src": "14869:11:0", + "src": "13848:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1372, + "id": 1324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14868:13:0", + "src": "13847:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14862:19:0", + "src": "13841:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17895,18 +17235,18 @@ "typeString": "uint256" } ], - "id": 1366, + "id": 1318, "name": "mul", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "14847:3:0", + "referencedDeclaration": 1243, + "src": "13826:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1374, + "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, @@ -17914,27 +17254,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14847:35:0", + "src": "13826:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14826:56:0" + "src": "13805:56:0" }, { "assignments": [ - 1377 + 1329 ], "declarations": [ { "constant": false, - "id": 1377, + "id": 1329, "name": "_quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14931:17:0", + "scope": 1344, + "src": "13910:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17942,10 +17282,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1376, + "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14931:7:0", + "src": "13910:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17955,14 +17295,14 @@ "visibility": "internal" } ], - "id": 1387, + "id": 1339, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1386, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, @@ -17976,7 +17316,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1383, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": false, @@ -17986,12 +17326,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1379, + "id": 1331, "name": "_numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "14956:10:0", + "referencedDeclaration": 1317, + "src": "13935:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17999,12 +17339,12 @@ }, { "argumentTypes": null, - "id": 1380, + "id": 1332, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1357, - "src": "14968:11:0", + "referencedDeclaration": 1309, + "src": "13947:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18022,18 +17362,18 @@ "typeString": "uint256" } ], - "id": 1378, + "id": 1330, "name": "div", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "14952:3:0", + "referencedDeclaration": 1261, + "src": "13931:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1381, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -18041,7 +17381,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14952:28:0", + "src": "13931:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18052,14 +17392,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "35", - "id": 1382, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14983:1:0", + "src": "13962:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_5_by_1", @@ -18067,21 +17407,21 @@ }, "value": "5" }, - "src": "14952:32:0", + "src": "13931:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1384, + "id": 1336, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14951:34:0", + "src": "13930:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18092,14 +17432,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1385, + "id": 1337, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14988:2:0", + "src": "13967:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -18107,14 +17447,14 @@ }, "value": "10" }, - "src": "14951:39:0", + "src": "13930:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14931:59:0" + "src": "13910:59:0" }, { "expression": { @@ -18122,40 +17462,40 @@ "components": [ { "argumentTypes": null, - "id": 1388, + "id": 1340, "name": "_quotient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "15008:9:0", + "referencedDeclaration": 1329, + "src": "13987:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1389, + "id": 1341, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "15007:11:0", + "src": "13986:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1363, - "id": 1390, + "functionReturnParameters": 1315, + "id": 1342, "nodeType": "Return", - "src": "15000:18:0" + "src": "13979:18:0" } ] }, "documentation": null, - "id": 1392, + "id": 1344, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -18163,16 +17503,16 @@ "name": "percent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1360, + "id": 1312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1355, + "id": 1307, "name": "numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14665:17:0", + "scope": 1344, + "src": "13644:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18180,10 +17520,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1354, + "id": 1306, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14665:7:0", + "src": "13644:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18194,11 +17534,11 @@ }, { "constant": false, - "id": 1357, + "id": 1309, "name": "denominator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14684:19:0", + "scope": 1344, + "src": "13663:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18206,10 +17546,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1356, + "id": 1308, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14684:7:0", + "src": "13663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18220,11 +17560,11 @@ }, { "constant": false, - "id": 1359, + "id": 1311, "name": "precision", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14705:17:0", + "scope": 1344, + "src": "13684:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18232,10 +17572,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1358, + "id": 1310, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14705:7:0", + "src": "13684:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18245,20 +17585,20 @@ "visibility": "internal" } ], - "src": "14664:59:0" + "src": "13643:59:0" }, "payable": false, "returnParameters": { - "id": 1363, + "id": 1315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1362, + "id": 1314, "name": "quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14750:16:0", + "scope": 1344, + "src": "13729:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18266,10 +17606,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1361, + "id": 1313, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14750:7:0", + "src": "13729:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18279,41 +17619,38 @@ "visibility": "internal" } ], - "src": "14749:18:0" + "src": "13728:18:0" }, - "scope": 1393, - "src": "14648:377:0", + "scope": 1345, + "src": "13627:377:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1394, - "src": "13723:1304:0" + "scope": 1346, + "src": "12702:1304:0" } ], - "src": "0:15029:0" + "src": "0:14008:0" }, "legacyAST": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "exportedSymbols": { "Doneth": [ - 1194 + 1146 ], "ERC20": [ - 1261 + 1213 ], "ERC20Basic": [ - 1221 - ], - "Ownable": [ - 48 + 1173 ], "SafeMath": [ - 1393 + 1345 ] }, - "id": 1394, + "id": 1346, "nodeType": "SourceUnit", "nodes": [ { @@ -18333,20 +17670,20 @@ "contractKind": "contract", "documentation": "@title Doneth (Doneth)\n@dev Doneth is a contract that allows shared access to funds\nin the form of Ether and ERC20 tokens. It is especially relevant\nto donation based projects. The admins of the contract determine \nwho is a member, and each member gets a number of shares. The \nnumber of shares each member has determines how much Ether/ERC20 \nthe member can withdraw from the contract.", "fullyImplemented": true, - "id": 48, + "id": 1146, "linearizedBaseContracts": [ - 48 + 1146 ], - "name": "Ownable", + "name": "Doneth", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 3, - "name": "owner", + "name": "implementation", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "640:20:0", + "scope": 1146, + "src": "467:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18357,7 +17694,33 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "640:7:0", + "src": "467:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1146, + "src": "557:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18368,26 +17731,26 @@ }, { "body": { - "id": 11, + "id": 13, "nodeType": "Block", - "src": "693:34:0", + "src": "610:34:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 9, + "id": 11, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 6, + "id": 8, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "703:5:0", + "referencedDeclaration": 5, + "src": "620:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18399,18 +17762,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 7, + "id": 9, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "711:2:0", + "referencedDeclaration": 1512, + "src": "628:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 8, + "id": 10, "isConstant": false, "isLValue": false, "isPure": false, @@ -18418,56 +17781,56 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "711:9:0", + "src": "628:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "703:17:0", + "src": "620:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 10, + "id": 12, "nodeType": "ExpressionStatement", - "src": "703:17:0" + "src": "620:17:0" } ] }, "documentation": null, - "id": 12, + "id": 14, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 4, + "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "683:2:0" + "src": "600:2:0" }, "payable": false, "returnParameters": { - "id": 5, + "id": 7, "nodeType": "ParameterList", "parameters": [], - "src": "693:0:0" + "src": "610:0:0" }, - "scope": 48, - "src": "667:60:0", + "scope": 1146, + "src": "584:60:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 27, + "id": 29, "nodeType": "Block", - "src": "754:78:0", + "src": "671:78:0", "statements": [ { "expression": { @@ -18479,7 +17842,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 23, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -18490,7 +17853,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18, + "id": 20, "isConstant": false, "isLValue": false, "isPure": false, @@ -18499,18 +17862,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 15, + "id": 17, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "772:3:0", + "referencedDeclaration": 1500, + "src": "689:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 16, + "id": 18, "isConstant": false, "isLValue": false, "isPure": false, @@ -18518,7 +17881,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "772:10:0", + "src": "689:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18528,18 +17891,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 17, + "id": 19, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "786:5:0", + "referencedDeclaration": 5, + "src": "703:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "772:19:0", + "src": "689:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18553,7 +17916,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 22, + "id": 24, "isConstant": false, "isLValue": false, "isPure": false, @@ -18562,18 +17925,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 19, + "id": 21, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "795:2:0", + "referencedDeclaration": 1512, + "src": "712:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 20, + "id": 22, "isConstant": false, "isLValue": false, "isPure": false, @@ -18581,7 +17944,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "795:9:0", + "src": "712:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18591,24 +17954,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 21, + "id": 23, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "808:5:0", + "referencedDeclaration": 5, + "src": "725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "795:18:0", + "src": "712:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "772:41:0", + "src": "689:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18622,21 +17985,21 @@ "typeString": "bool" } ], - "id": 14, + "id": 16, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1514, - "src": "764:7:0", + "referencedDeclaration": 1503, + "src": "681:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 24, + "id": 26, "isConstant": false, "isLValue": false, "isPure": false, @@ -18644,41 +18007,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "764:50:0", + "src": "681:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25, + "id": 27, "nodeType": "ExpressionStatement", - "src": "764:50:0" + "src": "681:50:0" }, { - "id": 26, + "id": 28, "nodeType": "PlaceholderStatement", - "src": "824:1:0" + "src": "741:1:0" } ] }, "documentation": null, - "id": 28, + "id": 30, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 13, + "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "751:2:0" + "src": "668:2:0" }, - "src": "733:99:0", + "src": "650:99:0", "visibility": "internal" }, { "body": { - "id": 46, + "id": 48, "nodeType": "Block", - "src": "900:85:0", + "src": "817:85:0", "statements": [ { "condition": { @@ -18687,19 +18050,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 39, + "id": 41, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 35, + "id": 37, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "914:8:0", + "referencedDeclaration": 32, + "src": "831:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18713,14 +18076,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 37, + "id": 39, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "934:1:0", + "src": "851:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -18736,20 +18099,20 @@ "typeString": "int_const 0" } ], - "id": 36, + "id": 38, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "926:7:0", + "src": "843:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 38, + "id": 40, "isConstant": false, "isLValue": false, "isPure": true, @@ -18757,43 +18120,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "926:10:0", + "src": "843:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "914:22:0", + "src": "831:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 45, + "id": 47, "nodeType": "IfStatement", - "src": "910:69:0", + "src": "827:69:0", "trueBody": { - "id": 44, + "id": 46, "nodeType": "Block", - "src": "938:41:0", + "src": "855:41:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 42, + "id": 44, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 40, + "id": 42, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "952:5:0", + "referencedDeclaration": 5, + "src": "869:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18803,26 +18166,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 41, + "id": 43, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "960:8:0", + "referencedDeclaration": 32, + "src": "877:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "952:16:0", + "src": "869:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 43, + "id": 45, "nodeType": "ExpressionStatement", - "src": "952:16:0" + "src": "869:16:0" } ] } @@ -18830,44 +18193,44 @@ ] }, "documentation": null, - "id": 47, + "id": 49, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 33, + "id": 35, "modifierName": { "argumentTypes": null, - "id": 32, + "id": 34, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "883:9:0", + "referencedDeclaration": 30, + "src": "800:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "883:9:0" + "src": "800:9:0" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 31, + "id": 33, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30, + "id": 32, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 47, - "src": "865:16:0", + "scope": 49, + "src": "782:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18875,10 +18238,10 @@ "typeString": "address" }, "typeName": { - "id": 29, + "id": 31, "name": "address", "nodeType": "ElementaryTypeName", - "src": "865:7:0", + "src": "782:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18888,81 +18251,42 @@ "visibility": "internal" } ], - "src": "864:18:0" + "src": "781:18:0" }, "payable": false, "returnParameters": { - "id": 34, + "id": 36, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:0" + "src": "817:0:0" }, - "scope": 48, - "src": "838:147:0", + "scope": 1146, + "src": "755:147:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" - } - ], - "scope": 1394, - "src": "617:370:0" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 49, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "1008:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$48", - "typeString": "contract Ownable" - } - }, - "id": 50, - "nodeType": "InheritanceSpecifier", - "src": "1008:7:0" - } - ], - "contractDependencies": [ - 48 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1194, - "linearizedBaseContracts": [ - 1194, - 48 - ], - "name": "Doneth", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "id": 53, + "id": 52, "libraryName": { "contractScope": null, - "id": 51, + "id": 50, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1393, - "src": "1028:8:0", + "referencedDeclaration": 1345, + "src": "914:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$1393", + "typeIdentifier": "t_contract$_SafeMath_$1345", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1022:27:0", + "src": "908:27:0", "typeName": { - "id": 52, + "id": 51, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1041:7:0", + "src": "927:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18971,11 +18295,11 @@ }, { "constant": false, - "id": 55, + "id": 54, "name": "initialized", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1057:23:0", + "scope": 1146, + "src": "943:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18983,10 +18307,10 @@ "typeString": "bool" }, "typeName": { - "id": 54, + "id": 53, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1057:4:0", + "src": "943:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18997,11 +18321,11 @@ }, { "constant": false, - "id": 57, + "id": 56, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1115:18:0", + "scope": 1146, + "src": "1001:18:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19009,10 +18333,10 @@ "typeString": "string" }, "typeName": { - "id": 56, + "id": 55, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1115:6:0", + "src": "1001:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -19023,11 +18347,11 @@ }, { "constant": false, - "id": 59, + "id": 58, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1186:26:0", + "scope": 1146, + "src": "1072:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19035,10 +18359,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 57, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1186:7:0", + "src": "1072:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19049,11 +18373,11 @@ }, { "constant": false, - "id": 61, + "id": 60, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1265:29:0", + "scope": 1146, + "src": "1151:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19061,10 +18385,10 @@ "typeString": "uint256" }, "typeName": { - "id": 60, + "id": 59, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1265:7:0", + "src": "1151:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19075,11 +18399,11 @@ }, { "constant": false, - "id": 63, + "id": 62, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1354:33:0", + "scope": 1146, + "src": "1240:33:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19087,10 +18411,10 @@ "typeString": "uint256" }, "typeName": { - "id": 62, + "id": 61, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1354:7:0", + "src": "1240:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19101,11 +18425,11 @@ }, { "constant": true, - "id": 66, + "id": 65, "name": "PRECISION", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1454:38:0", + "scope": 1146, + "src": "1340:38:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19113,10 +18437,10 @@ "typeString": "uint256" }, "typeName": { - "id": 64, + "id": 63, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1454:7:0", + "src": "1340:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19125,14 +18449,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 65, + "id": 64, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1490:2:0", + "src": "1376:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -19144,11 +18468,11 @@ }, { "constant": false, - "id": 68, + "id": 67, "name": "sharedExpense", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1546:28:0", + "scope": 1146, + "src": "1432:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19156,10 +18480,10 @@ "typeString": "uint256" }, "typeName": { - "id": 67, + "id": 66, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1546:7:0", + "src": "1432:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19170,11 +18494,11 @@ }, { "constant": false, - "id": 70, + "id": 69, "name": "sharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1580:37:0", + "scope": 1146, + "src": "1466:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19182,10 +18506,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 68, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1580:7:0", + "src": "1466:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19196,44 +18520,44 @@ }, { "constant": false, - "id": 74, + "id": 73, "name": "members", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1661:41:0", + "scope": 1146, + "src": "1547:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "typeName": { - "id": 73, + "id": 72, "keyType": { - "id": 71, + "id": 70, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1669:7:0", + "src": "1555:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1661:26:0", + "src": "1547:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "valueType": { "contractScope": null, - "id": 72, + "id": 71, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "1680:6:0", + "referencedDeclaration": 91, + "src": "1566:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } } @@ -19243,11 +18567,11 @@ }, { "constant": false, - "id": 77, + "id": 76, "name": "memberKeys", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1708:27:0", + "scope": 1146, + "src": "1594:27:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19256,19 +18580,19 @@ }, "typeName": { "baseType": { - "id": 75, + "id": 74, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1708:7:0", + "src": "1594:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 76, + "id": 75, "length": null, "nodeType": "ArrayTypeName", - "src": "1708:9:0", + "src": "1594:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -19279,15 +18603,15 @@ }, { "canonicalName": "Doneth.Member", - "id": 92, + "id": 91, "members": [ { "constant": false, - "id": 79, + "id": 78, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1765:11:0", + "scope": 91, + "src": "1651:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19295,10 +18619,10 @@ "typeString": "bool" }, "typeName": { - "id": 78, + "id": 77, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1765:4:0", + "src": "1651:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19309,11 +18633,11 @@ }, { "constant": false, - "id": 81, + "id": 80, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1786:10:0", + "scope": 91, + "src": "1672:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19321,10 +18645,10 @@ "typeString": "bool" }, "typeName": { - "id": 80, + "id": 79, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1786:4:0", + "src": "1672:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19335,11 +18659,11 @@ }, { "constant": false, - "id": 83, + "id": 82, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1806:14:0", + "scope": 91, + "src": "1692:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19347,10 +18671,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 81, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1806:7:0", + "src": "1692:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19361,11 +18685,11 @@ }, { "constant": false, - "id": 85, + "id": 84, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1830:17:0", + "scope": 91, + "src": "1716:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19373,10 +18697,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 83, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1830:7:0", + "src": "1716:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19387,11 +18711,11 @@ }, { "constant": false, - "id": 87, + "id": 86, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1857:17:0", + "scope": 91, + "src": "1743:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19399,10 +18723,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 85, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1857:6:0", + "src": "1743:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -19413,11 +18737,11 @@ }, { "constant": false, - "id": 91, + "id": 90, "name": "tokensWithdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1884:43:0", + "scope": 91, + "src": "1770:43:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19425,28 +18749,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 90, + "id": 89, "keyType": { - "id": 88, + "id": 87, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1892:7:0", + "src": "1778:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1884:27:0", + "src": "1770:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 89, + "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1903:7:0", + "src": "1789:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19459,161 +18783,60 @@ ], "name": "Member", "nodeType": "StructDefinition", - "scope": 1194, - "src": "1741:193:0", + "scope": 1146, + "src": "1627:193:0", "visibility": "public" }, { "constant": false, - "id": 96, + "id": 95, "name": "tokens", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2010:39:0", + "scope": 1146, + "src": "1896:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 95, + "id": 94, "keyType": { - "id": 93, + "id": 92, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:7:0", + "src": "1904:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2010:25:0", + "src": "1896:27:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "valueType": { - "contractScope": null, - "id": 94, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 104, - "src": "2029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage_ptr", - "typeString": "struct Doneth.Token" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "tokenKeys", - "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2055:26:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", + "id": 93, + "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2055:7:0", + "src": "1915:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2055:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" } }, "value": null, "visibility": "public" }, - { - "canonicalName": "Doneth.Token", - "id": 104, - "members": [ - { - "constant": false, - "id": 101, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2110:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 100, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2110:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "name": "totalWithdrawn", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2131:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 102, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2131:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Token", - "nodeType": "StructDefinition", - "scope": 1194, - "src": "2087:73:0", - "visibility": "public" - }, { "body": { - "id": 223, + "id": 179, "nodeType": "Block", - "src": "2363:911:0", + "src": "1967:484:0", "statements": [ { "expression": { @@ -19621,7 +18844,7 @@ "arguments": [ { "argumentTypes": null, - "id": 113, + "id": 100, "isConstant": false, "isLValue": false, "isPure": false, @@ -19629,15 +18852,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2381:12:0", + "src": "1985:12:0", "subExpression": { "argumentTypes": null, - "id": 112, + "id": 99, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2382:11:0", + "referencedDeclaration": 54, + "src": "1986:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19647,24 +18870,6 @@ "typeIdentifier": "t_bool", "typeString": "bool" } - }, - { - "argumentTypes": null, - "hexValue": "414c524541445920494e495449414c495a4544", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2395:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" - }, - "value": "ALREADY INITIALIZED" } ], "expression": { @@ -19672,27 +18877,23 @@ { "typeIdentifier": "t_bool", "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" } ], - "id": 111, + "id": 98, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1515, - "src": "2373:7:0", + "referencedDeclaration": 1503, + "src": "1977:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 115, + "id": 101, "isConstant": false, "isLValue": false, "isPure": false, @@ -19700,32 +18901,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2373:44:0", + "src": "1977:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 116, + "id": 102, "nodeType": "ExpressionStatement", - "src": "2373:44:0" + "src": "1977:21:0" }, { "expression": { "argumentTypes": null, - "id": 119, + "id": 105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 117, + "id": 103, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2427:11:0", + "referencedDeclaration": 54, + "src": "2008:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19736,14 +18937,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 118, + "id": 104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2441:4:0", + "src": "2022:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -19751,32 +18952,32 @@ }, "value": "true" }, - "src": "2427:18:0", + "src": "2008:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 120, + "id": 106, "nodeType": "ExpressionStatement", - "src": "2427:18:0" + "src": "2008:18:0" }, { "expression": { "argumentTypes": null, - "id": 124, + "id": 110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 121, + "id": 107, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "2455:5:0", + "referencedDeclaration": 5, + "src": "2037:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19788,18 +18989,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 122, + "id": 108, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2463:2:0", + "referencedDeclaration": 1512, + "src": "2045:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 123, + "id": 109, "isConstant": false, "isLValue": false, "isPure": false, @@ -19807,451 +19008,109 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2463:9:0", + "src": "2045:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2455:17:0", + "src": "2037:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 125, + "id": 111, "nodeType": "ExpressionStatement", - "src": "2455:17:0" + "src": "2037:17:0" }, { "expression": { "argumentTypes": null, - "id": 129, + "id": 115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 126, + "id": 112, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "2482:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 127, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1501, - "src": "2503:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 128, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2503:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2482:33:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 130, - "nodeType": "ExpressionStatement", - "src": "2482:33:0" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 132, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2535:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2529:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2529:20:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2529:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2559:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2529:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 140, - "nodeType": "IfStatement", - "src": "2525:46:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 137, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2563:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2563:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2563:8:0" - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 142, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2591:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 141, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2585:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2585:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2585:26:0", + "referencedDeclaration": 62, + "src": "2064:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2614:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2585:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 150, - "nodeType": "IfStatement", - "src": "2581:45:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 147, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2618:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2618:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:8:0" - } - }, - { - "expression": { - "argumentTypes": null, - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 151, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "2636:4:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "argumentTypes": null, - "id": 152, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2643:13:0", + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 113, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1490, + "src": "2085:5:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "number", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2085:12:0", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "2636:20:0", + "src": "2064:33:0", "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 154, + "id": 116, "nodeType": "ExpressionStatement", - "src": "2636:20:0" + "src": "2064:33:0" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 156, + "id": 118, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2721:23:0", + "scope": 180, + "src": "2108:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 155, + "id": 117, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "2721:6:0", + "referencedDeclaration": 91, + "src": "2108:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -20259,15 +19118,15 @@ "visibility": "internal" } ], - "id": 157, + "id": 119, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "2721:23:0" + "src": "2108:23:0" }, { "expression": { "argumentTypes": null, - "id": 162, + "id": 124, "isConstant": false, "isLValue": false, "isPure": false, @@ -20276,26 +19135,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 158, + "id": 120, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2754:9:0", + "referencedDeclaration": 118, + "src": "2141:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 160, + "id": 122, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "2754:16:0", + "referencedDeclaration": 78, + "src": "2141:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20306,14 +19165,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 161, + "id": 123, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2773:4:0", + "src": "2160:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20321,20 +19180,20 @@ }, "value": "true" }, - "src": "2754:23:0", + "src": "2141:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 163, + "id": 125, "nodeType": "ExpressionStatement", - "src": "2754:23:0" + "src": "2141:23:0" }, { "expression": { "argumentTypes": null, - "id": 168, + "id": 130, "isConstant": false, "isLValue": false, "isPure": false, @@ -20343,26 +19202,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 164, + "id": 126, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2787:9:0", + "referencedDeclaration": 118, + "src": "2174:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 166, + "id": 128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "2787:15:0", + "referencedDeclaration": 80, + "src": "2174:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20373,14 +19232,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 167, + "id": 129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2805:4:0", + "src": "2192:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20388,82 +19247,20 @@ }, "value": "true" }, - "src": "2787:22:0", + "src": "2174:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "2787:22:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 170, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2819:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 172, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "memberName", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "2819:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 173, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2842:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2819:35:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 175, + "id": 131, "nodeType": "ExpressionStatement", - "src": "2819:35:0" + "src": "2174:22:0" }, { "expression": { "argumentTypes": null, - "id": 181, + "id": 137, "isConstant": false, "isLValue": false, "isPure": false, @@ -20472,34 +19269,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 176, + "id": 132, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "2865:7:0", + "referencedDeclaration": 73, + "src": "2206:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 179, + "id": 135, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 177, + "id": 133, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2873:2:0", + "referencedDeclaration": 1512, + "src": "2214:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 178, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -20507,7 +19304,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2873:9:0", + "src": "2214:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20518,9 +19315,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2865:18:0", + "src": "2206:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -20528,26 +19325,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 180, + "id": 136, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2886:9:0", + "referencedDeclaration": 118, + "src": "2227:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "2865:30:0", + "src": "2206:30:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 182, + "id": 138, "nodeType": "ExpressionStatement", - "src": "2865:30:0" + "src": "2206:30:0" }, { "expression": { @@ -20557,18 +19354,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 186, + "id": 142, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2921:2:0", + "referencedDeclaration": 1512, + "src": "2262:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 187, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -20576,7 +19373,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2921:9:0", + "src": "2262:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20592,18 +19389,18 @@ ], "expression": { "argumentTypes": null, - "id": 183, + "id": 139, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "2905:10:0", + "referencedDeclaration": 76, + "src": "2246:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 185, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -20611,13 +19408,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2905:15:0", + "src": "2246:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 188, + "id": 144, "isConstant": false, "isLValue": false, "isPure": false, @@ -20625,32 +19422,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2905:26:0", + "src": "2246:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 189, + "id": 145, "nodeType": "ExpressionStatement", - "src": "2905:26:0" + "src": "2246:26:0" }, { "expression": { "argumentTypes": null, - "id": 195, + "id": 151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 190, + "id": 146, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2981:11:0", + "referencedDeclaration": 58, + "src": "2283:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20664,14 +19461,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 193, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3011:1:0", + "src": "2313:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -20689,32 +19486,32 @@ ], "expression": { "argumentTypes": null, - "id": 191, + "id": 147, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2995:11:0", + "referencedDeclaration": 58, + "src": "2297:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 192, + "id": 148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "2995:15:0", + "referencedDeclaration": 1305, + "src": "2297:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 194, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, @@ -20722,26 +19519,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2995:18:0", + "src": "2297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2981:32:0", + "src": "2283:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 196, + "id": 152, "nodeType": "ExpressionStatement", - "src": "2981:32:0" + "src": "2283:32:0" }, { "expression": { "argumentTypes": null, - "id": 210, + "id": 166, "isConstant": false, "isLValue": false, "isPure": false, @@ -20752,34 +19549,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 197, + "id": 153, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3023:7:0", + "referencedDeclaration": 73, + "src": "2325:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 200, + "id": 156, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 198, + "id": 154, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3031:2:0", + "referencedDeclaration": 1512, + "src": "2333:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 199, + "id": 155, "isConstant": false, "isLValue": false, "isPure": false, @@ -20787,7 +19584,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3031:9:0", + "src": "2333:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20798,21 +19595,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3023:18:0", + "src": "2325:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 201, + "id": 157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3023:25:0", + "referencedDeclaration": 82, + "src": "2325:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20826,14 +19623,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 208, + "id": 164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3081:1:0", + "src": "2383:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -20855,34 +19652,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 202, + "id": 158, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3051:7:0", + "referencedDeclaration": 73, + "src": "2353:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 205, + "id": 161, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 203, + "id": 159, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3059:2:0", + "referencedDeclaration": 1512, + "src": "2361:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 204, + "id": 160, "isConstant": false, "isLValue": false, "isPure": false, @@ -20890,7 +19687,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3059:9:0", + "src": "2361:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20901,41 +19698,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3051:18:0", + "src": "2353:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 206, + "id": 162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3051:25:0", + "referencedDeclaration": 82, + "src": "2353:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 207, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "3051:29:0", + "referencedDeclaration": 1305, + "src": "2353:29:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 209, + "id": 165, "isConstant": false, "isLValue": false, "isPure": false, @@ -20943,21 +19740,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3051:32:0", + "src": "2353:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3023:60:0", + "src": "2325:60:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 211, + "id": 167, "nodeType": "ExpressionStatement", - "src": "3023:60:0" + "src": "2325:60:0" }, { "expression": { @@ -20967,18 +19764,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 213, + "id": 169, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3102:2:0", + "referencedDeclaration": 1512, + "src": "2404:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 214, + "id": 170, "isConstant": false, "isLValue": false, "isPure": false, @@ -20986,7 +19783,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3102:9:0", + "src": "2404:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20995,14 +19792,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 215, + "id": 171, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3113:1:0", + "src": "2415:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -21016,34 +19813,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 216, + "id": 172, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3116:7:0", + "referencedDeclaration": 73, + "src": "2418:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 219, + "id": 175, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 217, + "id": 173, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3124:2:0", + "referencedDeclaration": 1512, + "src": "2426:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 218, + "id": 174, "isConstant": false, "isLValue": false, "isPure": false, @@ -21051,7 +19848,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3124:9:0", + "src": "2426:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21062,21 +19859,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3116:18:0", + "src": "2418:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 220, + "id": 176, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3116:25:0", + "referencedDeclaration": 82, + "src": "2418:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21098,18 +19895,18 @@ "typeString": "uint256" } ], - "id": 212, + "id": 168, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "3093:8:0", + "referencedDeclaration": 212, + "src": "2395:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 221, + "id": 177, "isConstant": false, "isLValue": false, "isPure": false, @@ -21117,20 +19914,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3093:49:0", + "src": "2395:49:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 222, + "id": 178, "nodeType": "ExpressionStatement", - "src": "3093:49:0" + "src": "2395:49:0" } ] }, "documentation": null, - "id": 224, + "id": 180, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -21138,73 +19935,20 @@ "name": "init", "nodeType": "FunctionDefinition", "parameters": { - "id": 109, + "id": 96, "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 106, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2313:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 105, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2313:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 108, - "name": "_founderName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2335:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 107, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2335:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2312:43:0" + "parameters": [], + "src": "1957:2:0" }, "payable": false, "returnParameters": { - "id": 110, + "id": 97, "nodeType": "ParameterList", "parameters": [], - "src": "2363:0:0" + "src": "1967:0:0" }, - "scope": 1194, - "src": "2299:975:0", + "scope": 1146, + "src": "1944:507:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -21212,21 +19956,21 @@ { "anonymous": false, "documentation": null, - "id": 230, + "id": 186, "name": "Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 229, + "id": 185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 226, + "id": 182, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3294:12:0", + "scope": 186, + "src": "2471:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21234,10 +19978,10 @@ "typeString": "address" }, "typeName": { - "id": 225, + "id": 181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:0", + "src": "2471:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21248,12 +19992,12 @@ }, { "constant": false, - "id": 228, + "id": 184, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3308:10:0", + "scope": 186, + "src": "2485:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21261,10 +20005,10 @@ "typeString": "uint256" }, "typeName": { - "id": 227, + "id": 183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3308:4:0", + "src": "2485:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21274,28 +20018,28 @@ "visibility": "internal" } ], - "src": "3293:26:0" + "src": "2470:26:0" }, - "src": "3280:40:0" + "src": "2457:40:0" }, { "anonymous": false, "documentation": null, - "id": 238, + "id": 194, "name": "Withdraw", "nodeType": "EventDefinition", "parameters": { - "id": 237, + "id": 193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 232, + "id": 188, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3340:12:0", + "scope": 194, + "src": "2517:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21303,10 +20047,10 @@ "typeString": "address" }, "typeName": { - "id": 231, + "id": 187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3340:7:0", + "src": "2517:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21317,12 +20061,12 @@ }, { "constant": false, - "id": 234, + "id": 190, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3354:10:0", + "scope": 194, + "src": "2531:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21330,10 +20074,10 @@ "typeString": "uint256" }, "typeName": { - "id": 233, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3354:4:0", + "src": "2531:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21344,12 +20088,12 @@ }, { "constant": false, - "id": 236, + "id": 192, "indexed": false, "name": "newTotalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3366:25:0", + "scope": 194, + "src": "2543:25:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21357,10 +20101,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 191, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3366:7:0", + "src": "2543:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21370,28 +20114,28 @@ "visibility": "internal" } ], - "src": "3339:53:0" + "src": "2516:53:0" }, - "src": "3325:68:0" + "src": "2502:68:0" }, { "anonymous": false, "documentation": null, - "id": 248, + "id": 204, "name": "TokenWithdraw", "nodeType": "EventDefinition", "parameters": { - "id": 247, + "id": 203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 196, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3418:12:0", + "scope": 204, + "src": "2595:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21399,10 +20143,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 195, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3418:7:0", + "src": "2595:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21413,12 +20157,12 @@ }, { "constant": false, - "id": 242, + "id": 198, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3432:10:0", + "scope": 204, + "src": "2609:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21426,10 +20170,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 197, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3432:4:0", + "src": "2609:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21440,12 +20184,12 @@ }, { "constant": false, - "id": 244, + "id": 200, "indexed": false, "name": "token", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3444:13:0", + "scope": 204, + "src": "2621:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21453,10 +20197,10 @@ "typeString": "address" }, "typeName": { - "id": 243, + "id": 199, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3444:7:0", + "src": "2621:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21467,12 +20211,12 @@ }, { "constant": false, - "id": 246, + "id": 202, "indexed": false, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3459:11:0", + "scope": 204, + "src": "2636:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21480,10 +20224,10 @@ "typeString": "uint256" }, "typeName": { - "id": 245, + "id": 201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3459:4:0", + "src": "2636:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21493,28 +20237,28 @@ "visibility": "internal" } ], - "src": "3417:54:0" + "src": "2594:54:0" }, - "src": "3398:74:0" + "src": "2575:74:0" }, { "anonymous": false, "documentation": null, - "id": 256, + "id": 212, "name": "AddShare", "nodeType": "EventDefinition", "parameters": { - "id": 255, + "id": 211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 250, + "id": 206, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3492:11:0", + "scope": 212, + "src": "2669:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21522,10 +20266,10 @@ "typeString": "address" }, "typeName": { - "id": 249, + "id": 205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "2669:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21536,12 +20280,12 @@ }, { "constant": false, - "id": 252, + "id": 208, "indexed": false, "name": "addedShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3505:19:0", + "scope": 212, + "src": "2682:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21549,10 +20293,10 @@ "typeString": "uint256" }, "typeName": { - "id": 251, + "id": 207, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3505:7:0", + "src": "2682:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21563,12 +20307,12 @@ }, { "constant": false, - "id": 254, + "id": 210, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3526:22:0", + "scope": 212, + "src": "2703:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21576,10 +20320,10 @@ "typeString": "uint256" }, "typeName": { - "id": 253, + "id": 209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3526:7:0", + "src": "2703:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21589,28 +20333,28 @@ "visibility": "internal" } ], - "src": "3491:58:0" + "src": "2668:58:0" }, - "src": "3477:73:0" + "src": "2654:73:0" }, { "anonymous": false, "documentation": null, - "id": 264, + "id": 220, "name": "RemoveShare", "nodeType": "EventDefinition", "parameters": { - "id": 263, + "id": 219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 258, + "id": 214, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3573:11:0", + "scope": 220, + "src": "2750:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21618,10 +20362,10 @@ "typeString": "address" }, "typeName": { - "id": 257, + "id": 213, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3573:7:0", + "src": "2750:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21632,12 +20376,12 @@ }, { "constant": false, - "id": 260, + "id": 216, "indexed": false, "name": "removedShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3586:21:0", + "scope": 220, + "src": "2763:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21645,10 +20389,10 @@ "typeString": "uint256" }, "typeName": { - "id": 259, + "id": 215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "2763:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21659,12 +20403,12 @@ }, { "constant": false, - "id": 262, + "id": 218, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3609:22:0", + "scope": 220, + "src": "2786:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21672,10 +20416,10 @@ "typeString": "uint256" }, "typeName": { - "id": 261, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3609:7:0", + "src": "2786:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21685,28 +20429,28 @@ "visibility": "internal" } ], - "src": "3572:60:0" + "src": "2749:60:0" }, - "src": "3555:78:0" + "src": "2732:78:0" }, { "anonymous": false, "documentation": null, - "id": 272, + "id": 228, "name": "ChangePrivilege", "nodeType": "EventDefinition", "parameters": { - "id": 271, + "id": 227, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 266, + "id": 222, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3660:11:0", + "scope": 228, + "src": "2837:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21714,10 +20458,10 @@ "typeString": "address" }, "typeName": { - "id": 265, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3660:7:0", + "src": "2837:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21728,12 +20472,12 @@ }, { "constant": false, - "id": 268, + "id": 224, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3673:13:0", + "scope": 228, + "src": "2850:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21741,10 +20485,10 @@ "typeString": "bool" }, "typeName": { - "id": 267, + "id": 223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3673:4:0", + "src": "2850:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21755,12 +20499,12 @@ }, { "constant": false, - "id": 270, + "id": 226, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3688:13:0", + "scope": 228, + "src": "2865:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21768,10 +20512,10 @@ "typeString": "bool" }, "typeName": { - "id": 269, + "id": 225, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3688:4:0", + "src": "2865:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21781,28 +20525,28 @@ "visibility": "internal" } ], - "src": "3659:43:0" + "src": "2836:43:0" }, - "src": "3638:65:0" + "src": "2815:65:0" }, { "anonymous": false, "documentation": null, - "id": 278, + "id": 234, "name": "ChangeContractName", "nodeType": "EventDefinition", "parameters": { - "id": 277, + "id": 233, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 274, + "id": 230, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3733:15:0", + "scope": 234, + "src": "2910:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21810,10 +20554,10 @@ "typeString": "string" }, "typeName": { - "id": 273, + "id": 229, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3733:6:0", + "src": "2910:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21824,12 +20568,12 @@ }, { "constant": false, - "id": 276, + "id": 232, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3750:15:0", + "scope": 234, + "src": "2927:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21837,10 +20581,10 @@ "typeString": "string" }, "typeName": { - "id": 275, + "id": 231, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3750:6:0", + "src": "2927:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21850,28 +20594,28 @@ "visibility": "internal" } ], - "src": "3732:34:0" + "src": "2909:34:0" }, - "src": "3708:59:0" + "src": "2885:59:0" }, { "anonymous": false, "documentation": null, - "id": 286, + "id": 242, "name": "ChangeMemberName", "nodeType": "EventDefinition", "parameters": { - "id": 285, + "id": 241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 280, + "id": 236, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3795:11:0", + "scope": 242, + "src": "2972:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21879,10 +20623,10 @@ "typeString": "address" }, "typeName": { - "id": 279, + "id": 235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3795:7:0", + "src": "2972:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21893,12 +20637,12 @@ }, { "constant": false, - "id": 282, + "id": 238, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3808:15:0", + "scope": 242, + "src": "2985:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21906,10 +20650,10 @@ "typeString": "string" }, "typeName": { - "id": 281, + "id": 237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3808:6:0", + "src": "2985:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21920,12 +20664,12 @@ }, { "constant": false, - "id": 284, + "id": 240, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3825:15:0", + "scope": 242, + "src": "3002:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21933,10 +20677,10 @@ "typeString": "string" }, "typeName": { - "id": 283, + "id": 239, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3825:6:0", + "src": "3002:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21946,28 +20690,28 @@ "visibility": "internal" } ], - "src": "3794:47:0" + "src": "2971:47:0" }, - "src": "3772:70:0" + "src": "2949:70:0" }, { "anonymous": false, "documentation": null, - "id": 294, + "id": 250, "name": "ChangeSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 293, + "id": 249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 244, "indexed": false, "name": "contractBalance", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3873:23:0", + "scope": 250, + "src": "3050:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21975,10 +20719,10 @@ "typeString": "uint256" }, "typeName": { - "id": 287, + "id": 243, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3873:7:0", + "src": "3050:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21989,12 +20733,12 @@ }, { "constant": false, - "id": 290, + "id": 246, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3898:16:0", + "scope": 250, + "src": "3075:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22002,10 +20746,10 @@ "typeString": "uint256" }, "typeName": { - "id": 289, + "id": 245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3898:7:0", + "src": "3075:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22016,12 +20760,12 @@ }, { "constant": false, - "id": 292, + "id": 248, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3916:16:0", + "scope": 250, + "src": "3093:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22029,10 +20773,10 @@ "typeString": "uint256" }, "typeName": { - "id": 291, + "id": 247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3916:7:0", + "src": "3093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22042,28 +20786,28 @@ "visibility": "internal" } ], - "src": "3872:61:0" + "src": "3049:61:0" }, - "src": "3847:87:0" + "src": "3024:87:0" }, { "anonymous": false, "documentation": null, - "id": 304, + "id": 260, "name": "WithdrawSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 303, + "id": 259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 296, + "id": 252, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3967:12:0", + "scope": 260, + "src": "3144:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22071,10 +20815,10 @@ "typeString": "address" }, "typeName": { - "id": 295, + "id": 251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3967:7:0", + "src": "3144:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22085,12 +20829,12 @@ }, { "constant": false, - "id": 298, + "id": 254, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3981:10:0", + "scope": 260, + "src": "3158:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22098,10 +20842,10 @@ "typeString": "address" }, "typeName": { - "id": 297, + "id": 253, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3981:7:0", + "src": "3158:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22112,12 +20856,12 @@ }, { "constant": false, - "id": 300, + "id": 256, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3993:10:0", + "scope": 260, + "src": "3170:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22125,10 +20869,10 @@ "typeString": "uint256" }, "typeName": { - "id": 299, + "id": 255, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3993:4:0", + "src": "3170:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22139,12 +20883,12 @@ }, { "constant": false, - "id": 302, + "id": 258, "indexed": false, "name": "newSharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "4005:33:0", + "scope": 260, + "src": "3182:33:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22152,10 +20896,10 @@ "typeString": "uint256" }, "typeName": { - "id": 301, + "id": 257, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4005:7:0", + "src": "3182:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22165,15 +20909,15 @@ "visibility": "internal" } ], - "src": "3966:73:0" + "src": "3143:73:0" }, - "src": "3939:101:0" + "src": "3116:101:0" }, { "body": { - "id": 314, + "id": 270, "nodeType": "Block", - "src": "4126:47:0", + "src": "3303:47:0", "statements": [ { "expression": { @@ -22183,18 +20927,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 308, + "id": 264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4144:3:0", + "referencedDeclaration": 1500, + "src": "3321:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 309, + "id": 265, "isConstant": false, "isLValue": false, "isPure": false, @@ -22202,7 +20946,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4144:10:0", + "src": "3321:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22212,18 +20956,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 310, + "id": 266, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4156:3:0", + "referencedDeclaration": 1500, + "src": "3333:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 311, + "id": 267, "isConstant": false, "isLValue": false, "isPure": false, @@ -22231,7 +20975,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4156:9:0", + "src": "3333:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22249,18 +20993,18 @@ "typeString": "uint256" } ], - "id": 307, + "id": 263, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 230, - "src": "4136:7:0", + "referencedDeclaration": 186, + "src": "3313:7:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 312, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -22268,20 +21012,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4136:30:0", + "src": "3313:30:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 313, + "id": 269, "nodeType": "ExpressionStatement", - "src": "4136:30:0" + "src": "3313:30:0" } ] }, "documentation": null, - "id": 315, + "id": 271, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -22289,29 +21033,29 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 305, + "id": 261, "nodeType": "ParameterList", "parameters": [], - "src": "4108:2:0" + "src": "3285:2:0" }, "payable": true, "returnParameters": { - "id": 306, + "id": 262, "nodeType": "ParameterList", "parameters": [], - "src": "4126:0:0" + "src": "3303:0:0" }, - "scope": 1194, - "src": "4099:74:0", + "scope": 1146, + "src": "3276:74:0", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 333, + "id": 289, "nodeType": "Block", - "src": "4200:95:0", + "src": "3377:95:0", "statements": [ { "condition": { @@ -22320,7 +21064,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 327, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, @@ -22331,7 +21075,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 320, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -22340,18 +21084,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 317, + "id": 273, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4215:3:0", + "referencedDeclaration": 1500, + "src": "3392:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 318, + "id": 274, "isConstant": false, "isLValue": false, "isPure": false, @@ -22359,7 +21103,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4215:10:0", + "src": "3392:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22369,18 +21113,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 319, + "id": 275, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "4229:5:0", + "referencedDeclaration": 5, + "src": "3406:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4215:19:0", + "src": "3392:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22390,7 +21134,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 326, + "id": 282, "isConstant": false, "isLValue": false, "isPure": false, @@ -22398,41 +21142,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4238:26:0", + "src": "3415:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 321, + "id": 277, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4239:7:0", + "referencedDeclaration": 73, + "src": "3416:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 324, + "id": 280, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 322, + "id": 278, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4247:3:0", + "referencedDeclaration": 1500, + "src": "3424:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 323, + "id": 279, "isConstant": false, "isLValue": false, "isPure": false, @@ -22440,7 +21184,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4247:10:0", + "src": "3424:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22451,21 +21195,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4239:19:0", + "src": "3416:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 325, + "id": 281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "4239:25:0", + "referencedDeclaration": 80, + "src": "3416:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22476,37 +21220,37 @@ "typeString": "bool" } }, - "src": "4215:49:0", + "src": "3392:49:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 331, + "id": 287, "nodeType": "IfStatement", - "src": "4211:63:0", + "src": "3388:63:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 328, + "id": 284, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4266:6:0", + "referencedDeclaration": 1505, + "src": "3443:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 329, + "id": 285, "isConstant": false, "isLValue": false, "isPure": false, @@ -22514,47 +21258,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4266:8:0", + "src": "3443:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 330, + "id": 286, "nodeType": "ExpressionStatement", - "src": "4266:8:0" + "src": "3443:8:0" } }, { - "id": 332, + "id": 288, "nodeType": "PlaceholderStatement", - "src": "4287:1:0" + "src": "3464:1:0" } ] }, "documentation": null, - "id": 334, + "id": 290, "name": "onlyAdmin", "nodeType": "ModifierDefinition", "parameters": { - "id": 316, + "id": 272, "nodeType": "ParameterList", "parameters": [], - "src": "4197:2:0" + "src": "3374:2:0" }, - "src": "4179:116:0", + "src": "3356:116:0", "visibility": "internal" }, { "body": { - "id": 348, + "id": 304, "nodeType": "Block", - "src": "4336:64:0", + "src": "3513:64:0", "statements": [ { "condition": { "argumentTypes": null, - "id": 342, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -22562,33 +21306,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4351:20:0", + "src": "3528:20:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 338, + "id": 294, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4352:7:0", + "referencedDeclaration": 73, + "src": "3529:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 340, + "id": 296, "indexExpression": { "argumentTypes": null, - "id": 339, + "id": 295, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "4360:3:0", + "referencedDeclaration": 292, + "src": "3537:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22599,21 +21343,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4352:12:0", + "src": "3529:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 341, + "id": 297, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "4352:19:0", + "referencedDeclaration": 78, + "src": "3529:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22625,30 +21369,30 @@ } }, "falseBody": null, - "id": 346, + "id": 302, "nodeType": "IfStatement", - "src": "4347:34:0", + "src": "3524:34:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 343, + "id": 299, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4373:6:0", + "referencedDeclaration": 1505, + "src": "3550:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 344, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -22656,39 +21400,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4373:8:0", + "src": "3550:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 345, + "id": 301, "nodeType": "ExpressionStatement", - "src": "4373:8:0" + "src": "3550:8:0" } }, { - "id": 347, + "id": 303, "nodeType": "PlaceholderStatement", - "src": "4392:1:0" + "src": "3569:1:0" } ] }, "documentation": null, - "id": 349, + "id": 305, "name": "onlyExisting", "nodeType": "ModifierDefinition", "parameters": { - "id": 337, + "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 336, + "id": 292, "name": "who", "nodeType": "VariableDeclaration", - "scope": 349, - "src": "4323:11:0", + "scope": 305, + "src": "3500:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22696,10 +21440,10 @@ "typeString": "address" }, "typeName": { - "id": 335, + "id": 291, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4323:7:0", + "src": "3500:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22709,34 +21453,34 @@ "visibility": "internal" } ], - "src": "4322:13:0" + "src": "3499:13:0" }, - "src": "4301:99:0", + "src": "3478:99:0", "visibility": "internal" }, { "body": { - "id": 357, + "id": 313, "nodeType": "Block", - "src": "4514:41:0", + "src": "3691:41:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 354, + "id": 310, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4531:10:0", + "referencedDeclaration": 76, + "src": "3708:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 355, + "id": 311, "isConstant": false, "isLValue": true, "isPure": false, @@ -22744,21 +21488,21 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4531:17:0", + "src": "3708:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 353, - "id": 356, + "functionReturnParameters": 309, + "id": 312, "nodeType": "Return", - "src": "4524:24:0" + "src": "3701:24:0" } ] }, "documentation": null, - "id": 358, + "id": 314, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22766,23 +21510,23 @@ "name": "getMemberCount", "nodeType": "FunctionDefinition", "parameters": { - "id": 350, + "id": 306, "nodeType": "ParameterList", "parameters": [], - "src": "4481:2:0" + "src": "3658:2:0" }, "payable": false, "returnParameters": { - "id": 353, + "id": 309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 352, + "id": 308, "name": "", "nodeType": "VariableDeclaration", - "scope": 358, - "src": "4508:4:0", + "scope": 314, + "src": "3685:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22790,10 +21534,10 @@ "typeString": "uint256" }, "typeName": { - "id": 351, + "id": 307, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4508:4:0", + "src": "3685:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22803,45 +21547,45 @@ "visibility": "internal" } ], - "src": "4507:6:0" + "src": "3684:6:0" }, - "scope": 1194, - "src": "4458:97:0", + "scope": 1146, + "src": "3635:97:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 369, + "id": 325, "nodeType": "Block", - "src": "4632:39:0", + "src": "3809:39:0", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 321, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4649:10:0", + "referencedDeclaration": 76, + "src": "3826:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 367, + "id": 323, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 322, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "4660:3:0", + "referencedDeclaration": 316, + "src": "3837:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22852,21 +21596,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4649:15:0", + "src": "3826:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 364, - "id": 368, + "functionReturnParameters": 320, + "id": 324, "nodeType": "Return", - "src": "4642:22:0" + "src": "3819:22:0" } ] }, "documentation": null, - "id": 370, + "id": 326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22874,16 +21618,16 @@ "name": "getMemberAtKey", "nodeType": "FunctionDefinition", "parameters": { - "id": 361, + "id": 317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 360, + "id": 316, "name": "key", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4589:8:0", + "scope": 326, + "src": "3766:8:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22891,10 +21635,10 @@ "typeString": "uint256" }, "typeName": { - "id": 359, + "id": 315, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4589:4:0", + "src": "3766:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22904,20 +21648,20 @@ "visibility": "internal" } ], - "src": "4588:10:0" + "src": "3765:10:0" }, "payable": false, "returnParameters": { - "id": 364, + "id": 320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 363, + "id": 319, "name": "", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4623:7:0", + "scope": 326, + "src": "3800:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22925,10 +21669,10 @@ "typeString": "address" }, "typeName": { - "id": 362, + "id": 318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4623:7:0", + "src": "3800:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22938,37 +21682,37 @@ "visibility": "internal" } ], - "src": "4622:9:0" + "src": "3799:9:0" }, - "scope": 1194, - "src": "4565:106:0", + "scope": 1146, + "src": "3742:106:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 378, + "id": 334, "nodeType": "Block", - "src": "4744:36:0", + "src": "3921:36:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 375, + "id": 331, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "4761:4:0", + "referencedDeclaration": 1513, + "src": "3938:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 376, + "id": 332, "isConstant": false, "isLValue": false, "isPure": false, @@ -22976,21 +21720,21 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4761:12:0", + "src": "3938:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 374, - "id": 377, + "functionReturnParameters": 330, + "id": 333, "nodeType": "Return", - "src": "4754:19:0" + "src": "3931:19:0" } ] }, "documentation": null, - "id": 379, + "id": 335, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22998,23 +21742,23 @@ "name": "getBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 371, + "id": 327, "nodeType": "ParameterList", "parameters": [], - "src": "4700:2:0" + "src": "3877:2:0" }, "payable": false, "returnParameters": { - "id": 374, + "id": 330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 373, + "id": 329, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 379, - "src": "4727:15:0", + "scope": 335, + "src": "3904:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23022,10 +21766,10 @@ "typeString": "uint256" }, "typeName": { - "id": 372, + "id": 328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4727:7:0", + "src": "3904:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23035,19 +21779,19 @@ "visibility": "internal" } ], - "src": "4726:17:0" + "src": "3903:17:0" }, - "scope": 1194, - "src": "4681:99:0", + "scope": 1146, + "src": "3858:99:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 401, + "id": 357, "nodeType": "Block", - "src": "4945:94:0", + "src": "4122:94:0", "statements": [ { "expression": { @@ -23058,12 +21802,12 @@ "arguments": [ { "argumentTypes": null, - "id": 393, + "id": 349, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4970:4:0", + "referencedDeclaration": 338, + "src": "4147:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -23077,20 +21821,20 @@ "typeString": "string memory" } ], - "id": 392, + "id": 348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4963:6:0", + "src": "4140:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": "string" }, - "id": 394, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -23098,7 +21842,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4963:12:0", + "src": "4140:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -23106,12 +21850,12 @@ }, { "argumentTypes": null, - "id": 395, + "id": 351, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4977:5:0", + "referencedDeclaration": 340, + "src": "4154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23119,12 +21863,12 @@ }, { "argumentTypes": null, - "id": 396, + "id": 352, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "4984:18:0", + "referencedDeclaration": 342, + "src": "4161:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23132,12 +21876,12 @@ }, { "argumentTypes": null, - "id": 397, + "id": 353, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "5004:11:0", + "referencedDeclaration": 344, + "src": "4181:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23145,40 +21889,40 @@ }, { "argumentTypes": null, - "id": 398, + "id": 354, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "5017:14:0", + "referencedDeclaration": 346, + "src": "4194:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 399, + "id": 355, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4962:70:0", + "src": "4139:70:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_string_memory_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(string memory,address,uint256,uint256,uint256)" } }, - "functionReturnParameters": 391, - "id": 400, + "functionReturnParameters": 347, + "id": 356, "nodeType": "Return", - "src": "4955:77:0" + "src": "4132:77:0" } ] }, "documentation": null, - "id": 402, + "id": 358, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23186,23 +21930,23 @@ "name": "getContractInfo", "nodeType": "FunctionDefinition", "parameters": { - "id": 380, + "id": 336, "nodeType": "ParameterList", "parameters": [], - "src": "4814:2:0" + "src": "3991:2:0" }, "payable": false, "returnParameters": { - "id": 391, + "id": 347, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 382, + "id": 338, "name": "name", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4841:11:0", + "scope": 358, + "src": "4018:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23210,10 +21954,10 @@ "typeString": "string" }, "typeName": { - "id": 381, + "id": 337, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4841:6:0", + "src": "4018:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23224,11 +21968,11 @@ }, { "constant": false, - "id": 384, + "id": 340, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4854:13:0", + "scope": 358, + "src": "4031:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23236,10 +21980,10 @@ "typeString": "address" }, "typeName": { - "id": 383, + "id": 339, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4854:7:0", + "src": "4031:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23250,11 +21994,11 @@ }, { "constant": false, - "id": 386, + "id": 342, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4870:26:0", + "scope": 358, + "src": "4047:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23262,10 +22006,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 341, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4870:7:0", + "src": "4047:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23276,11 +22020,11 @@ }, { "constant": false, - "id": 388, + "id": 344, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4899:19:0", + "scope": 358, + "src": "4076:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23288,10 +22032,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 343, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4899:7:0", + "src": "4076:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23302,11 +22046,11 @@ }, { "constant": false, - "id": 390, + "id": 346, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4921:22:0", + "scope": 358, + "src": "4098:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23314,10 +22058,10 @@ "typeString": "uint256" }, "typeName": { - "id": 389, + "id": 345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4921:7:0", + "src": "4098:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23327,47 +22071,47 @@ "visibility": "internal" } ], - "src": "4840:104:0" + "src": "4017:104:0" }, - "scope": 1194, - "src": "4790:249:0", + "scope": 1146, + "src": "3967:249:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 434, + "id": 390, "nodeType": "Block", - "src": "5202:111:0", + "src": "4379:111:0", "statements": [ { "assignments": [ - 419 + 375 ], "declarations": [ { "constant": false, - "id": 419, + "id": 375, "name": "m", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5210:15:0", + "scope": 391, + "src": "4387:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 418, + "id": 374, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5210:6:0", + "referencedDeclaration": 91, + "src": "4387:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -23375,31 +22119,31 @@ "visibility": "internal" } ], - "id": 423, + "id": 379, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 420, + "id": 376, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5228:7:0", + "referencedDeclaration": 73, + "src": "4405:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 422, + "id": 378, "indexExpression": { "argumentTypes": null, - "id": 421, + "id": 377, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5236:8:0", + "referencedDeclaration": 360, + "src": "4413:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23410,14 +22154,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5228:17:0", + "src": "4405:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5210:35:0" + "src": "4387:35:0" }, { "expression": { @@ -23427,26 +22171,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 424, + "id": 380, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5261:1:0", + "referencedDeclaration": 375, + "src": "4438:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 425, + "id": 381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5261:7:0", + "referencedDeclaration": 80, + "src": "4438:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23456,26 +22200,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 426, + "id": 382, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5270:1:0", + "referencedDeclaration": 375, + "src": "4447:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 427, + "id": 383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5270:8:0", + "referencedDeclaration": 82, + "src": "4447:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23485,26 +22229,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 428, + "id": 384, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5280:1:0", + "referencedDeclaration": 375, + "src": "4457:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 429, + "id": 385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5280:11:0", + "referencedDeclaration": 84, + "src": "4457:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23514,54 +22258,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 430, + "id": 386, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5293:1:0", + "referencedDeclaration": 375, + "src": "4470:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 431, + "id": 387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "5293:12:0", + "referencedDeclaration": 86, + "src": "4470:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } } ], - "id": 432, + "id": 388, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5260:46:0", + "src": "4437:46:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$_t_uint256_$_t_string_memory_$", "typeString": "tuple(bool,uint256,uint256,string memory)" } }, - "functionReturnParameters": 417, - "id": 433, + "functionReturnParameters": 373, + "id": 389, "nodeType": "Return", - "src": "5253:53:0" + "src": "4430:53:0" } ] }, "documentation": null, - "id": 435, + "id": 391, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23570,49 +22314,49 @@ "arguments": [ { "argumentTypes": null, - "id": 407, + "id": 363, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5118:8:0", + "referencedDeclaration": 360, + "src": "4295:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 408, + "id": 364, "modifierName": { "argumentTypes": null, - "id": 406, + "id": 362, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5105:12:0", + "referencedDeclaration": 305, + "src": "4282:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "5105:22:0" + "src": "4282:22:0" } ], "name": "returnMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 405, + "id": 361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 404, + "id": 360, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5071:16:0", + "scope": 391, + "src": "4248:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23620,10 +22364,10 @@ "typeString": "address" }, "typeName": { - "id": 403, + "id": 359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5071:7:0", + "src": "4248:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23633,20 +22377,20 @@ "visibility": "internal" } ], - "src": "5070:18:0" + "src": "4247:18:0" }, "payable": false, "returnParameters": { - "id": 417, + "id": 373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 410, + "id": 366, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5136:10:0", + "scope": 391, + "src": "4313:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23654,10 +22398,10 @@ "typeString": "bool" }, "typeName": { - "id": 409, + "id": 365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5136:4:0", + "src": "4313:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23668,11 +22412,11 @@ }, { "constant": false, - "id": 412, + "id": 368, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5148:14:0", + "scope": 391, + "src": "4325:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23680,10 +22424,10 @@ "typeString": "uint256" }, "typeName": { - "id": 411, + "id": 367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5148:7:0", + "src": "4325:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23694,11 +22438,11 @@ }, { "constant": false, - "id": 414, + "id": 370, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5164:17:0", + "scope": 391, + "src": "4341:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23706,10 +22450,10 @@ "typeString": "uint256" }, "typeName": { - "id": 413, + "id": 369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5164:7:0", + "src": "4341:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23720,11 +22464,11 @@ }, { "constant": false, - "id": 416, + "id": 372, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5183:17:0", + "scope": 391, + "src": "4360:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23732,10 +22476,10 @@ "typeString": "string" }, "typeName": { - "id": 415, + "id": 371, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5183:6:0", + "src": "4360:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23745,19 +22489,19 @@ "visibility": "internal" } ], - "src": "5135:66:0" + "src": "4312:66:0" }, - "scope": 1194, - "src": "5049:264:0", + "scope": 1146, + "src": "4226:264:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 451, + "id": 407, "nodeType": "Block", - "src": "5394:200:0", + "src": "4571:61:0", "statements": [ { "expression": { @@ -23768,14 +22512,14 @@ "arguments": [ { "argumentTypes": null, - "id": 447, + "id": 403, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "5442:4:0", + "referencedDeclaration": 1513, + "src": "4619:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } } @@ -23783,24 +22527,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } ], - "id": 446, + "id": 402, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5434:7:0", + "src": "4611:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 448, + "id": 404, "isConstant": false, "isLValue": false, "isPure": false, @@ -23808,7 +22552,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5434:13:0", + "src": "4611:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23827,12 +22571,12 @@ "arguments": [ { "argumentTypes": null, - "id": 443, + "id": 399, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "5417:5:0", + "referencedDeclaration": 393, + "src": "4594:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23846,18 +22590,18 @@ "typeString": "address" } ], - "id": 442, + "id": 398, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "5411:5:0", + "referencedDeclaration": 1213, + "src": "4588:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 444, + "id": 400, "isConstant": false, "isLValue": false, "isPure": false, @@ -23865,27 +22609,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:12:0", + "src": "4588:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 445, + "id": 401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1203, - "src": "5411:22:0", + "referencedDeclaration": 1155, + "src": "4588:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 449, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -23893,21 +22637,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:37:0", + "src": "4588:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 441, - "id": 450, + "functionReturnParameters": 397, + "id": 406, "nodeType": "Return", - "src": "5404:44:0" + "src": "4581:44:0" } ] }, "documentation": null, - "id": 452, + "id": 408, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23915,16 +22659,16 @@ "name": "checkERC20Balance", "nodeType": "FunctionDefinition", "parameters": { - "id": 438, + "id": 394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 437, + "id": 393, "name": "token", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5346:13:0", + "scope": 408, + "src": "4523:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23932,10 +22676,10 @@ "typeString": "address" }, "typeName": { - "id": 436, + "id": 392, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5346:7:0", + "src": "4523:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23945,20 +22689,20 @@ "visibility": "internal" } ], - "src": "5345:15:0" + "src": "4522:15:0" }, "payable": false, "returnParameters": { - "id": 441, + "id": 397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 440, + "id": 396, "name": "", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5385:7:0", + "scope": 408, + "src": "4562:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23966,10 +22710,10 @@ "typeString": "uint256" }, "typeName": { - "id": 439, + "id": 395, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5385:7:0", + "src": "4562:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23979,19 +22723,19 @@ "visibility": "internal" } ], - "src": "5384:9:0" + "src": "4561:9:0" }, - "scope": 1194, - "src": "5319:275:0", + "scope": 1146, + "src": "4496:136:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 521, + "id": 477, "nodeType": "Block", - "src": "5746:399:0", + "src": "4784:399:0", "statements": [ { "condition": { @@ -24000,26 +22744,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 465, + "id": 421, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5817:7:0", + "referencedDeclaration": 73, + "src": "4855:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 467, + "id": 423, "indexExpression": { "argumentTypes": null, - "id": 466, + "id": 422, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "5825:3:0", + "referencedDeclaration": 410, + "src": "4863:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24030,51 +22774,51 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5817:12:0", + "src": "4855:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 468, + "id": 424, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5817:19:0", + "referencedDeclaration": 78, + "src": "4855:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 472, + "id": 428, "nodeType": "IfStatement", - "src": "5813:33:0", + "src": "4851:33:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 469, + "id": 425, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5838:6:0", + "referencedDeclaration": 1505, + "src": "4876:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 470, + "id": 426, "isConstant": false, "isLValue": false, "isPure": false, @@ -24082,15 +22826,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5838:8:0", + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 427, "nodeType": "ExpressionStatement", - "src": "5838:8:0" + "src": "4876:8:0" } }, { @@ -24100,7 +22844,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 478, + "id": 434, "isConstant": false, "isLValue": false, "isPure": false, @@ -24112,12 +22856,12 @@ "arguments": [ { "argumentTypes": null, - "id": 474, + "id": 430, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "5866:10:0", + "referencedDeclaration": 416, + "src": "4904:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -24131,20 +22875,20 @@ "typeString": "string memory" } ], - "id": 473, + "id": 429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5860:5:0", + "src": "4898:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 475, + "id": 431, "isConstant": false, "isLValue": false, "isPure": false, @@ -24152,13 +22896,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5860:17:0", + "src": "4898:17:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 476, + "id": 432, "isConstant": false, "isLValue": false, "isPure": false, @@ -24166,7 +22910,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5860:24:0", + "src": "4898:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24177,14 +22921,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 477, + "id": 433, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5887:2:0", + "src": "4925:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -24192,37 +22936,37 @@ }, "value": "21" }, - "src": "5860:29:0", + "src": "4898:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 482, + "id": 438, "nodeType": "IfStatement", - "src": "5856:43:0", + "src": "4894:43:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 479, + "id": 435, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5891:6:0", + "referencedDeclaration": 1505, + "src": "4929:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 480, + "id": 436, "isConstant": false, "isLValue": false, "isPure": false, @@ -24230,15 +22974,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5891:8:0", + "src": "4929:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 481, + "id": 437, "nodeType": "ExpressionStatement", - "src": "5891:8:0" + "src": "4929:8:0" } }, { @@ -24246,26 +22990,26 @@ "declarations": [ { "constant": false, - "id": 484, + "id": 440, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5910:23:0", + "scope": 478, + "src": "4948:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 483, + "id": 439, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5910:6:0", + "referencedDeclaration": 91, + "src": "4948:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -24273,15 +23017,15 @@ "visibility": "internal" } ], - "id": 485, + "id": 441, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "5910:23:0" + "src": "4948:23:0" }, { "expression": { "argumentTypes": null, - "id": 490, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -24290,26 +23034,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 486, + "id": 442, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5943:9:0", + "referencedDeclaration": 440, + "src": "4981:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 488, + "id": 444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5943:16:0", + "referencedDeclaration": 78, + "src": "4981:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24320,14 +23064,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 489, + "id": 445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5962:4:0", + "src": "5000:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24335,20 +23079,20 @@ }, "value": "true" }, - "src": "5943:23:0", + "src": "4981:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 491, + "id": 447, "nodeType": "ExpressionStatement", - "src": "5943:23:0" + "src": "4981:23:0" }, { "expression": { "argumentTypes": null, - "id": 496, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -24357,26 +23101,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 492, + "id": 448, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5976:9:0", + "referencedDeclaration": 440, + "src": "5014:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 494, + "id": 450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5976:15:0", + "referencedDeclaration": 80, + "src": "5014:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24386,31 +23130,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 495, + "id": 451, "name": "admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "5994:5:0", + "referencedDeclaration": 414, + "src": "5032:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5976:23:0", + "src": "5014:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 497, + "id": 453, "nodeType": "ExpressionStatement", - "src": "5976:23:0" + "src": "5014:23:0" }, { "expression": { "argumentTypes": null, - "id": 502, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, @@ -24419,26 +23163,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 498, + "id": 454, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6009:9:0", + "referencedDeclaration": 440, + "src": "5047:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 500, + "id": 456, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6009:20:0", + "referencedDeclaration": 86, + "src": "5047:20:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -24448,31 +23192,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 501, + "id": 457, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6032:10:0", + "referencedDeclaration": 416, + "src": "5070:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6009:33:0", + "src": "5047:33:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, - "id": 503, + "id": 459, "nodeType": "ExpressionStatement", - "src": "6009:33:0" + "src": "5047:33:0" }, { "expression": { "argumentTypes": null, - "id": 508, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -24481,26 +23225,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 504, + "id": 460, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6053:7:0", + "referencedDeclaration": 73, + "src": "5091:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 506, + "id": 462, "indexExpression": { "argumentTypes": null, - "id": 505, + "id": 461, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6061:3:0", + "referencedDeclaration": 410, + "src": "5099:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24511,9 +23255,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6053:12:0", + "src": "5091:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -24521,26 +23265,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 507, + "id": 463, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6068:9:0", + "referencedDeclaration": 440, + "src": "5106:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "6053:24:0", + "src": "5091:24:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 509, + "id": 465, "nodeType": "ExpressionStatement", - "src": "6053:24:0" + "src": "5091:24:0" }, { "expression": { @@ -24548,12 +23292,12 @@ "arguments": [ { "argumentTypes": null, - "id": 513, + "id": 469, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6103:3:0", + "referencedDeclaration": 410, + "src": "5141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24569,18 +23313,18 @@ ], "expression": { "argumentTypes": null, - "id": 510, + "id": 466, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "6087:10:0", + "referencedDeclaration": 76, + "src": "5125:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 512, + "id": 468, "isConstant": false, "isLValue": false, "isPure": false, @@ -24588,13 +23332,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6087:15:0", + "src": "5125:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 514, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, @@ -24602,15 +23346,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:20:0", + "src": "5125:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 515, + "id": 471, "nodeType": "ExpressionStatement", - "src": "6087:20:0" + "src": "5125:20:0" }, { "expression": { @@ -24618,12 +23362,12 @@ "arguments": [ { "argumentTypes": null, - "id": 517, + "id": 473, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6126:3:0", + "referencedDeclaration": 410, + "src": "5164:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24631,12 +23375,12 @@ }, { "argumentTypes": null, - "id": 518, + "id": 474, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "6131:6:0", + "referencedDeclaration": 412, + "src": "5169:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24654,18 +23398,18 @@ "typeString": "uint256" } ], - "id": 516, + "id": 472, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "6117:8:0", + "referencedDeclaration": 770, + "src": "5155:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 519, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -24673,57 +23417,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:21:0", + "src": "5155:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6117:21:0" + "src": "5155:21:0" } ] }, "documentation": null, - "id": 522, + "id": 478, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 463, + "id": 419, "modifierName": { "argumentTypes": null, - "id": 462, + "id": 418, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "5734:9:0", + "referencedDeclaration": 290, + "src": "4772:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "5734:11:0" + "src": "4772:11:0" } ], "name": "addMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 454, + "id": 410, "name": "who", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5667:11:0", + "scope": 478, + "src": "4705:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24731,10 +23475,10 @@ "typeString": "address" }, "typeName": { - "id": 453, + "id": 409, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5667:7:0", + "src": "4705:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24745,11 +23489,11 @@ }, { "constant": false, - "id": 456, + "id": 412, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5680:14:0", + "scope": 478, + "src": "4718:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24757,10 +23501,10 @@ "typeString": "uint256" }, "typeName": { - "id": 455, + "id": 411, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5680:7:0", + "src": "4718:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24771,11 +23515,11 @@ }, { "constant": false, - "id": 458, + "id": 414, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5696:10:0", + "scope": 478, + "src": "4734:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24783,10 +23527,10 @@ "typeString": "bool" }, "typeName": { - "id": 457, + "id": 413, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5696:4:0", + "src": "4734:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24797,11 +23541,11 @@ }, { "constant": false, - "id": 460, + "id": 416, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5708:17:0", + "scope": 478, + "src": "4746:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24809,10 +23553,10 @@ "typeString": "string" }, "typeName": { - "id": 459, + "id": 415, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5708:6:0", + "src": "4746:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -24822,26 +23566,26 @@ "visibility": "internal" } ], - "src": "5666:60:0" + "src": "4704:60:0" }, "payable": false, "returnParameters": { - "id": 464, + "id": 420, "nodeType": "ParameterList", "parameters": [], - "src": "5746:0:0" + "src": "4784:0:0" }, - "scope": 1194, - "src": "5648:497:0", + "scope": 1146, + "src": "4686:497:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 575, + "id": 531, "nodeType": "Block", - "src": "6248:244:0", + "src": "5286:244:0", "statements": [ { "condition": { @@ -24850,7 +23594,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 544, + "id": 500, "isConstant": false, "isLValue": false, "isPure": false, @@ -24864,26 +23608,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 536, + "id": 492, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6267:7:0", + "referencedDeclaration": 73, + "src": "5305:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 538, + "id": 494, "indexExpression": { "argumentTypes": null, - "id": 537, + "id": 493, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6275:3:0", + "referencedDeclaration": 480, + "src": "5313:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24894,21 +23638,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6267:12:0", + "src": "5305:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 539, + "id": 495, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6267:23:0", + "referencedDeclaration": 86, + "src": "5305:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -24922,18 +23666,18 @@ "typeString": "string storage ref" } ], - "id": 535, + "id": 491, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6262:4:0", + "referencedDeclaration": 1510, + "src": "5300:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 540, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -24941,7 +23685,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6262:29:0", + "src": "5300:29:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24954,12 +23698,12 @@ "arguments": [ { "argumentTypes": null, - "id": 542, + "id": 498, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6300:4:0", + "referencedDeclaration": 486, + "src": "5338:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -24973,18 +23717,18 @@ "typeString": "string memory" } ], - "id": 541, + "id": 497, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6295:4:0", + "referencedDeclaration": 1510, + "src": "5333:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 543, + "id": 499, "isConstant": false, "isLValue": false, "isPure": false, @@ -24992,34 +23736,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6295:10:0", + "src": "5333:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6262:43:0", + "src": "5300:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 550, + "id": 506, "nodeType": "IfStatement", - "src": "6258:76:0", + "src": "5296:76:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 502, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6324:3:0", + "referencedDeclaration": 480, + "src": "5362:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25027,12 +23771,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 503, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6329:4:0", + "referencedDeclaration": 486, + "src": "5367:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -25050,18 +23794,18 @@ "typeString": "string memory" } ], - "id": 545, + "id": 501, "name": "changeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6307:16:0", + "referencedDeclaration": 589, + "src": "5345:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory)" } }, - "id": 548, + "id": 504, "isConstant": false, "isLValue": false, "isPure": false, @@ -25069,15 +23813,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6307:27:0", + "src": "5345:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 549, + "id": 505, "nodeType": "ExpressionStatement", - "src": "6307:27:0" + "src": "5345:27:0" } }, { @@ -25087,7 +23831,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 556, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, @@ -25098,26 +23842,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 551, + "id": 507, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6348:7:0", + "referencedDeclaration": 73, + "src": "5386:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 553, + "id": 509, "indexExpression": { "argumentTypes": null, - "id": 552, + "id": 508, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6356:3:0", + "referencedDeclaration": 480, + "src": "5394:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25128,21 +23872,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6348:12:0", + "src": "5386:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 554, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6348:18:0", + "referencedDeclaration": 80, + "src": "5386:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25152,39 +23896,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 555, + "id": 511, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6370:7:0", + "referencedDeclaration": 484, + "src": "5408:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6348:29:0", + "src": "5386:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 562, + "id": 518, "nodeType": "IfStatement", - "src": "6344:69:0", + "src": "5382:69:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 558, + "id": 514, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6400:3:0", + "referencedDeclaration": 480, + "src": "5438:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25192,12 +23936,12 @@ }, { "argumentTypes": null, - "id": 559, + "id": 515, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6405:7:0", + "referencedDeclaration": 484, + "src": "5443:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25215,18 +23959,18 @@ "typeString": "bool" } ], - "id": 557, + "id": 513, "name": "changeAdminPrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "6379:20:0", + "referencedDeclaration": 615, + "src": "5417:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,bool)" } }, - "id": 560, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, @@ -25234,15 +23978,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6379:34:0", + "src": "5417:34:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 561, + "id": 517, "nodeType": "ExpressionStatement", - "src": "6379:34:0" + "src": "5417:34:0" } }, { @@ -25252,7 +23996,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 568, + "id": 524, "isConstant": false, "isLValue": false, "isPure": false, @@ -25263,26 +24007,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 563, + "id": 519, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6427:7:0", + "referencedDeclaration": 73, + "src": "5465:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 565, + "id": 521, "indexExpression": { "argumentTypes": null, - "id": 564, + "id": 520, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6435:3:0", + "referencedDeclaration": 480, + "src": "5473:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25293,21 +24037,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6427:12:0", + "src": "5465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 566, + "id": 522, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6427:19:0", + "referencedDeclaration": 82, + "src": "5465:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25317,39 +24061,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 567, + "id": 523, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6450:6:0", + "referencedDeclaration": 482, + "src": "5488:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6427:29:0", + "src": "5465:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 574, + "id": 530, "nodeType": "IfStatement", - "src": "6423:62:0", + "src": "5461:62:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 570, + "id": 526, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6473:3:0", + "referencedDeclaration": 480, + "src": "5511:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25357,12 +24101,12 @@ }, { "argumentTypes": null, - "id": 571, + "id": 527, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6478:6:0", + "referencedDeclaration": 482, + "src": "5516:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25380,18 +24124,18 @@ "typeString": "uint256" } ], - "id": 569, + "id": 525, "name": "allocateShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 772, - "src": "6458:14:0", + "referencedDeclaration": 728, + "src": "5496:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 572, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -25399,58 +24143,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6458:27:0", + "src": "5496:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 573, + "id": 529, "nodeType": "ExpressionStatement", - "src": "6458:27:0" + "src": "5496:27:0" } } ] }, "documentation": null, - "id": 576, + "id": 532, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 533, + "id": 489, "modifierName": { "argumentTypes": null, - "id": 532, + "id": 488, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6236:9:0", + "referencedDeclaration": 290, + "src": "5274:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6236:11:0" + "src": "5274:11:0" } ], "name": "updateMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 524, + "id": 480, "name": "who", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6173:11:0", + "scope": 532, + "src": "5211:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25458,10 +24202,10 @@ "typeString": "address" }, "typeName": { - "id": 523, + "id": 479, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6173:7:0", + "src": "5211:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25472,11 +24216,11 @@ }, { "constant": false, - "id": 526, + "id": 482, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6186:14:0", + "scope": 532, + "src": "5224:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25484,10 +24228,10 @@ "typeString": "uint256" }, "typeName": { - "id": 525, + "id": 481, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6186:7:0", + "src": "5224:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25498,11 +24242,11 @@ }, { "constant": false, - "id": 528, + "id": 484, "name": "isAdmin", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6202:12:0", + "scope": 532, + "src": "5240:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25510,10 +24254,10 @@ "typeString": "bool" }, "typeName": { - "id": 527, + "id": 483, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6202:4:0", + "src": "5240:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25524,11 +24268,11 @@ }, { "constant": false, - "id": 530, + "id": 486, "name": "name", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6216:11:0", + "scope": 532, + "src": "5254:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25536,10 +24280,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 485, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6216:6:0", + "src": "5254:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -25549,26 +24293,26 @@ "visibility": "internal" } ], - "src": "6172:56:0" + "src": "5210:56:0" }, "payable": false, "returnParameters": { - "id": 534, + "id": 490, "nodeType": "ParameterList", "parameters": [], - "src": "6248:0:0" + "src": "5286:0:0" }, - "scope": 1194, - "src": "6151:341:0", + "scope": 1146, + "src": "5189:341:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 632, + "id": 588, "nodeType": "Block", - "src": "6638:259:0", + "src": "5676:259:0", "statements": [ { "condition": { @@ -25577,7 +24321,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 601, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, @@ -25588,7 +24332,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 594, + "id": 550, "isConstant": false, "isLValue": false, "isPure": false, @@ -25599,7 +24343,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 589, + "id": 545, "isConstant": false, "isLValue": false, "isPure": false, @@ -25608,18 +24352,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 586, + "id": 542, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6652:3:0", + "referencedDeclaration": 1500, + "src": "5690:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 587, + "id": 543, "isConstant": false, "isLValue": false, "isPure": false, @@ -25627,7 +24371,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6652:10:0", + "src": "5690:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25637,18 +24381,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 588, + "id": 544, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6666:3:0", + "referencedDeclaration": 534, + "src": "5704:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6652:17:0", + "src": "5690:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25662,7 +24406,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 593, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -25671,18 +24415,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 590, + "id": 546, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6673:3:0", + "referencedDeclaration": 1500, + "src": "5711:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 591, + "id": 547, "isConstant": false, "isLValue": false, "isPure": false, @@ -25690,7 +24434,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6673:10:0", + "src": "5711:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25700,24 +24444,24 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 592, + "id": 548, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "6687:5:0", + "referencedDeclaration": 5, + "src": "5725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6673:19:0", + "src": "5711:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6652:40:0", + "src": "5690:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25727,7 +24471,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 600, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, @@ -25735,41 +24479,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6696:26:0", + "src": "5734:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 595, + "id": 551, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6697:7:0", + "referencedDeclaration": 73, + "src": "5735:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 598, + "id": 554, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 596, + "id": 552, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6705:3:0", + "referencedDeclaration": 1500, + "src": "5743:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 597, + "id": 553, "isConstant": false, "isLValue": false, "isPure": false, @@ -25777,7 +24521,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6705:10:0", + "src": "5743:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25788,21 +24532,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6697:19:0", + "src": "5735:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 599, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6697:25:0", + "referencedDeclaration": 80, + "src": "5735:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25813,37 +24557,37 @@ "typeString": "bool" } }, - "src": "6652:70:0", + "src": "5690:70:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 605, + "id": 561, "nodeType": "IfStatement", - "src": "6648:84:0", + "src": "5686:84:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 602, + "id": 558, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6724:6:0", + "referencedDeclaration": 1505, + "src": "5762:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 603, + "id": 559, "isConstant": false, "isLValue": false, "isPure": false, @@ -25851,15 +24595,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6724:8:0", + "src": "5762:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 604, + "id": 560, "nodeType": "ExpressionStatement", - "src": "6724:8:0" + "src": "5762:8:0" } }, { @@ -25869,7 +24613,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 611, + "id": 567, "isConstant": false, "isLValue": false, "isPure": false, @@ -25881,12 +24625,12 @@ "arguments": [ { "argumentTypes": null, - "id": 607, + "id": 563, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6752:7:0", + "referencedDeclaration": 536, + "src": "5790:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -25900,20 +24644,20 @@ "typeString": "string memory" } ], - "id": 606, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6746:5:0", + "src": "5784:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 608, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, @@ -25921,13 +24665,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6746:14:0", + "src": "5784:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 609, + "id": 565, "isConstant": false, "isLValue": false, "isPure": false, @@ -25935,7 +24679,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6746:21:0", + "src": "5784:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25946,14 +24690,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 610, + "id": 566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6770:2:0", + "src": "5808:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -25961,37 +24705,37 @@ }, "value": "21" }, - "src": "6746:26:0", + "src": "5784:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 615, + "id": 571, "nodeType": "IfStatement", - "src": "6742:40:0", + "src": "5780:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 612, + "id": 568, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6774:6:0", + "referencedDeclaration": 1505, + "src": "5812:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 613, + "id": 569, "isConstant": false, "isLValue": false, "isPure": false, @@ -25999,15 +24743,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6774:8:0", + "src": "5812:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 614, + "id": 570, "nodeType": "ExpressionStatement", - "src": "6774:8:0" + "src": "5812:8:0" } }, { @@ -26016,12 +24760,12 @@ "arguments": [ { "argumentTypes": null, - "id": 617, + "id": 573, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6809:3:0", + "referencedDeclaration": 534, + "src": "5847:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26033,26 +24777,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 618, + "id": 574, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6814:7:0", + "referencedDeclaration": 73, + "src": "5852:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 620, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 619, + "id": 575, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6822:3:0", + "referencedDeclaration": 534, + "src": "5860:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26063,21 +24807,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6814:12:0", + "src": "5852:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 621, + "id": 577, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6814:23:0", + "referencedDeclaration": 86, + "src": "5852:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26085,12 +24829,12 @@ }, { "argumentTypes": null, - "id": 622, + "id": 578, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6839:7:0", + "referencedDeclaration": 536, + "src": "5877:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26112,18 +24856,18 @@ "typeString": "string memory" } ], - "id": 616, + "id": 572, "name": "ChangeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "6792:16:0", + "referencedDeclaration": 242, + "src": "5830:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 623, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, @@ -26131,20 +24875,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6792:55:0", + "src": "5830:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 624, + "id": 580, "nodeType": "ExpressionStatement", - "src": "6792:55:0" + "src": "5830:55:0" }, { "expression": { "argumentTypes": null, - "id": 630, + "id": 586, "isConstant": false, "isLValue": false, "isPure": false, @@ -26155,26 +24899,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 625, + "id": 581, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6857:7:0", + "referencedDeclaration": 73, + "src": "5895:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 627, + "id": 583, "indexExpression": { "argumentTypes": null, - "id": 626, + "id": 582, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6865:3:0", + "referencedDeclaration": 534, + "src": "5903:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26185,21 +24929,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6857:12:0", + "src": "5895:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 628, + "id": 584, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6857:23:0", + "referencedDeclaration": 86, + "src": "5895:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26209,31 +24953,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 629, + "id": 585, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6883:7:0", + "referencedDeclaration": 536, + "src": "5921:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6857:33:0", + "src": "5895:33:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 631, + "id": 587, "nodeType": "ExpressionStatement", - "src": "6857:33:0" + "src": "5895:33:0" } ] }, "documentation": null, - "id": 633, + "id": 589, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -26242,49 +24986,49 @@ "arguments": [ { "argumentTypes": null, - "id": 583, + "id": 539, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6633:3:0", + "referencedDeclaration": 534, + "src": "5671:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 584, + "id": 540, "modifierName": { "argumentTypes": null, - "id": 582, + "id": 538, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "6620:12:0", + "referencedDeclaration": 305, + "src": "5658:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6620:17:0" + "src": "5658:17:0" } ], "name": "changeMemberName", "nodeType": "FunctionDefinition", "parameters": { - "id": 581, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 578, + "id": 534, "name": "who", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6584:11:0", + "scope": 589, + "src": "5622:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26292,10 +25036,10 @@ "typeString": "address" }, "typeName": { - "id": 577, + "id": 533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6584:7:0", + "src": "5622:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26306,11 +25050,11 @@ }, { "constant": false, - "id": 580, + "id": 536, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6597:14:0", + "scope": 589, + "src": "5635:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26318,10 +25062,10 @@ "typeString": "string" }, "typeName": { - "id": 579, + "id": 535, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6597:6:0", + "src": "5635:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -26331,26 +25075,26 @@ "visibility": "internal" } ], - "src": "6583:29:0" + "src": "5621:29:0" }, "payable": false, "returnParameters": { - "id": 585, + "id": 541, "nodeType": "ParameterList", "parameters": [], - "src": "6638:0:0" + "src": "5676:0:0" }, - "scope": 1194, - "src": "6558:339:0", + "scope": 1146, + "src": "5596:339:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 658, + "id": 614, "nodeType": "Block", - "src": "6980:107:0", + "src": "6018:107:0", "statements": [ { "expression": { @@ -26358,12 +25102,12 @@ "arguments": [ { "argumentTypes": null, - "id": 643, + "id": 599, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7006:3:0", + "referencedDeclaration": 591, + "src": "6044:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26375,26 +25119,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 644, + "id": 600, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7011:7:0", + "referencedDeclaration": 73, + "src": "6049:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 646, + "id": 602, "indexExpression": { "argumentTypes": null, - "id": 645, + "id": 601, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7019:3:0", + "referencedDeclaration": 591, + "src": "6057:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26405,21 +25149,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7011:12:0", + "src": "6049:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 647, + "id": 603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7011:18:0", + "referencedDeclaration": 80, + "src": "6049:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26427,12 +25171,12 @@ }, { "argumentTypes": null, - "id": 648, + "id": 604, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7031:8:0", + "referencedDeclaration": 593, + "src": "6069:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26454,18 +25198,18 @@ "typeString": "bool" } ], - "id": 642, + "id": 598, "name": "ChangePrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 272, - "src": "6990:15:0", + "referencedDeclaration": 228, + "src": "6028:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,bool,bool)" } }, - "id": 649, + "id": 605, "isConstant": false, "isLValue": false, "isPure": false, @@ -26473,20 +25217,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6990:50:0", + "src": "6028:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 650, + "id": 606, "nodeType": "ExpressionStatement", - "src": "6990:50:0" + "src": "6028:50:0" }, { "expression": { "argumentTypes": null, - "id": 656, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, @@ -26497,26 +25241,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 651, + "id": 607, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7050:7:0", + "referencedDeclaration": 73, + "src": "6088:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 653, + "id": 609, "indexExpression": { "argumentTypes": null, - "id": 652, + "id": 608, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7058:3:0", + "referencedDeclaration": 591, + "src": "6096:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26527,21 +25271,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7050:12:0", + "src": "6088:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 654, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7050:18:0", + "referencedDeclaration": 80, + "src": "6088:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26551,68 +25295,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 655, + "id": 611, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7071:8:0", + "referencedDeclaration": 593, + "src": "6109:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7050:29:0", + "src": "6088:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 657, + "id": 613, "nodeType": "ExpressionStatement", - "src": "7050:29:0" + "src": "6088:29:0" } ] }, "documentation": null, - "id": 659, + "id": 615, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 640, + "id": 596, "modifierName": { "argumentTypes": null, - "id": 639, + "id": 595, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6968:9:0", + "referencedDeclaration": 290, + "src": "6006:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6968:11:0" + "src": "6006:11:0" } ], "name": "changeAdminPrivilege", "nodeType": "FunctionDefinition", "parameters": { - "id": 638, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 635, + "id": 591, "name": "who", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6933:11:0", + "scope": 615, + "src": "5971:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26620,10 +25364,10 @@ "typeString": "address" }, "typeName": { - "id": 634, + "id": 590, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6933:7:0", + "src": "5971:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26634,11 +25378,11 @@ }, { "constant": false, - "id": 637, + "id": 593, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6946:13:0", + "scope": 615, + "src": "5984:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26646,10 +25390,10 @@ "typeString": "bool" }, "typeName": { - "id": 636, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6946:4:0", + "src": "5984:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26659,26 +25403,26 @@ "visibility": "internal" } ], - "src": "6932:28:0" + "src": "5970:28:0" }, "payable": false, "returnParameters": { - "id": 641, + "id": 597, "nodeType": "ParameterList", "parameters": [], - "src": "6980:0:0" + "src": "6018:0:0" }, - "scope": 1194, - "src": "6903:184:0", + "scope": 1146, + "src": "5941:184:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 685, + "id": 641, "nodeType": "Block", - "src": "7215:124:0", + "src": "6253:124:0", "statements": [ { "condition": { @@ -26687,7 +25431,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 671, + "id": 627, "isConstant": false, "isLValue": false, "isPure": false, @@ -26699,12 +25443,12 @@ "arguments": [ { "argumentTypes": null, - "id": 667, + "id": 623, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7235:7:0", + "referencedDeclaration": 617, + "src": "6273:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26718,20 +25462,20 @@ "typeString": "string memory" } ], - "id": 666, + "id": 622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7229:5:0", + "src": "6267:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 668, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -26739,13 +25483,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7229:14:0", + "src": "6267:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 669, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -26753,7 +25497,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7229:21:0", + "src": "6267:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26764,14 +25508,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 670, + "id": 626, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7253:2:0", + "src": "6291:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -26779,37 +25523,37 @@ }, "value": "21" }, - "src": "7229:26:0", + "src": "6267:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 675, + "id": 631, "nodeType": "IfStatement", - "src": "7225:40:0", + "src": "6263:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 672, + "id": 628, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7257:6:0", + "referencedDeclaration": 1505, + "src": "6295:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 673, + "id": 629, "isConstant": false, "isLValue": false, "isPure": false, @@ -26817,15 +25561,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7257:8:0", + "src": "6295:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 674, + "id": 630, "nodeType": "ExpressionStatement", - "src": "7257:8:0" + "src": "6295:8:0" } }, { @@ -26834,12 +25578,12 @@ "arguments": [ { "argumentTypes": null, - "id": 677, + "id": 633, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7294:4:0", + "referencedDeclaration": 56, + "src": "6332:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26847,12 +25591,12 @@ }, { "argumentTypes": null, - "id": 678, + "id": 634, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7300:7:0", + "referencedDeclaration": 617, + "src": "6338:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26870,18 +25614,18 @@ "typeString": "string memory" } ], - "id": 676, + "id": 632, "name": "ChangeContractName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 278, - "src": "7275:18:0", + "referencedDeclaration": 234, + "src": "6313:18:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, - "id": 679, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, @@ -26889,32 +25633,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7275:33:0", + "src": "6313:33:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 680, + "id": 636, "nodeType": "ExpressionStatement", - "src": "7275:33:0" + "src": "6313:33:0" }, { "expression": { "argumentTypes": null, - "id": 683, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 681, + "id": 637, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7318:4:0", + "referencedDeclaration": 56, + "src": "6356:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26924,68 +25668,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 682, + "id": 638, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7325:7:0", + "referencedDeclaration": 617, + "src": "6363:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "7318:14:0", + "src": "6356:14:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 684, + "id": 640, "nodeType": "ExpressionStatement", - "src": "7318:14:0" + "src": "6356:14:0" } ] }, "documentation": null, - "id": 686, + "id": 642, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 664, + "id": 620, "modifierName": { "argumentTypes": null, - "id": 663, + "id": 619, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "7203:9:0", + "referencedDeclaration": 290, + "src": "6241:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7203:11:0" + "src": "6241:11:0" } ], "name": "changeContractName", "nodeType": "FunctionDefinition", "parameters": { - "id": 662, + "id": 618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 661, + "id": 617, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 686, - "src": "7180:14:0", + "scope": 642, + "src": "6218:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26993,10 +25737,10 @@ "typeString": "string" }, "typeName": { - "id": 660, + "id": 616, "name": "string", "nodeType": "ElementaryTypeName", - "src": "7180:6:0", + "src": "6218:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -27006,26 +25750,26 @@ "visibility": "internal" } ], - "src": "7179:16:0" + "src": "6217:16:0" }, "payable": false, "returnParameters": { - "id": 665, + "id": 621, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:0" + "src": "6253:0:0" }, - "scope": 1194, - "src": "7152:187:0", + "scope": 1146, + "src": "6190:187:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 722, + "id": 678, "nodeType": "Block", - "src": "7653:262:0", + "src": "6691:262:0", "statements": [ { "condition": { @@ -27034,19 +25778,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 695, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 693, + "id": 649, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7667:13:0", + "referencedDeclaration": 644, + "src": "6705:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27056,48 +25800,48 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 694, + "id": 650, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7683:22:0", + "referencedDeclaration": 69, + "src": "6721:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7667:38:0", + "src": "6705:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 699, + "id": 655, "nodeType": "IfStatement", - "src": "7663:52:0", + "src": "6701:52:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 696, + "id": 652, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7707:6:0", + "referencedDeclaration": 1505, + "src": "6745:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 697, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -27105,15 +25849,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7707:8:0", + "src": "6745:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 698, + "id": 654, "nodeType": "ExpressionStatement", - "src": "7707:8:0" + "src": "6745:8:0" } }, { @@ -27123,7 +25867,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 706, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, @@ -27133,12 +25877,12 @@ "arguments": [ { "argumentTypes": null, - "id": 702, + "id": 658, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7747:22:0", + "referencedDeclaration": 69, + "src": "6785:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27154,32 +25898,32 @@ ], "expression": { "argumentTypes": null, - "id": 700, + "id": 656, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7729:13:0", + "referencedDeclaration": 644, + "src": "6767:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 701, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "7729:17:0", + "referencedDeclaration": 1281, + "src": "6767:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 703, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, @@ -27187,7 +25931,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7729:41:0", + "src": "6767:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27199,18 +25943,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 704, + "id": 660, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7773:4:0", + "referencedDeclaration": 1513, + "src": "6811:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 705, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -27218,43 +25962,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7773:12:0", + "src": "6811:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7729:56:0", + "src": "6767:56:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 710, + "id": 666, "nodeType": "IfStatement", - "src": "7725:70:0", + "src": "6763:70:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 707, + "id": 663, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7787:6:0", + "referencedDeclaration": 1505, + "src": "6825:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 708, + "id": 664, "isConstant": false, "isLValue": false, "isPure": false, @@ -27262,15 +26006,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7787:8:0", + "src": "6825:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 709, + "id": 665, "nodeType": "ExpressionStatement", - "src": "7787:8:0" + "src": "6825:8:0" } }, { @@ -27281,18 +26025,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 712, + "id": 668, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7826:4:0", + "referencedDeclaration": 1513, + "src": "6864:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 713, + "id": 669, "isConstant": false, "isLValue": false, "isPure": false, @@ -27300,7 +26044,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7826:12:0", + "src": "6864:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27308,12 +26052,12 @@ }, { "argumentTypes": null, - "id": 714, + "id": 670, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7840:13:0", + "referencedDeclaration": 67, + "src": "6878:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27321,12 +26065,12 @@ }, { "argumentTypes": null, - "id": 715, + "id": 671, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7855:13:0", + "referencedDeclaration": 644, + "src": "6893:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27348,18 +26092,18 @@ "typeString": "uint256" } ], - "id": 711, + "id": 667, "name": "ChangeSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 294, - "src": "7806:19:0", + "referencedDeclaration": 250, + "src": "6844:19:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 716, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -27367,32 +26111,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7806:63:0", + "src": "6844:63:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 717, + "id": 673, "nodeType": "ExpressionStatement", - "src": "7806:63:0" + "src": "6844:63:0" }, { "expression": { "argumentTypes": null, - "id": 720, + "id": 676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 718, + "id": 674, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7879:13:0", + "referencedDeclaration": 67, + "src": "6917:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27402,68 +26146,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 719, + "id": 675, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7895:13:0", + "referencedDeclaration": 644, + "src": "6933:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7879:29:0", + "src": "6917:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 721, + "id": 677, "nodeType": "ExpressionStatement", - "src": "7879:29:0" + "src": "6917:29:0" } ] }, "documentation": null, - "id": 723, + "id": 679, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 691, + "id": 647, "modifierName": { "argumentTypes": null, - "id": 690, + "id": 646, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "7641:9:0", + "referencedDeclaration": 30, + "src": "6679:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7641:11:0" + "src": "6679:11:0" } ], "name": "changeSharedExpenseAllocation", "nodeType": "FunctionDefinition", "parameters": { - "id": 689, + "id": 645, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 688, + "id": 644, "name": "newAllocation", "nodeType": "VariableDeclaration", - "scope": 723, - "src": "7611:21:0", + "scope": 679, + "src": "6649:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27471,10 +26215,10 @@ "typeString": "uint256" }, "typeName": { - "id": 687, + "id": 643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7611:7:0", + "src": "6649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27484,39 +26228,39 @@ "visibility": "internal" } ], - "src": "7610:23:0" + "src": "6648:23:0" }, "payable": false, "returnParameters": { - "id": 692, + "id": 648, "nodeType": "ParameterList", "parameters": [], - "src": "7653:0:0" + "src": "6691:0:0" }, - "scope": 1194, - "src": "7572:343:0", + "scope": 1146, + "src": "6610:343:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 771, + "id": 727, "nodeType": "Block", - "src": "8108:283:0", + "src": "7146:283:0", "statements": [ { "assignments": [ - 736 + 692 ], "declarations": [ { "constant": false, - "id": 736, + "id": 692, "name": "currentShares", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8118:21:0", + "scope": 728, + "src": "7156:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27524,10 +26268,10 @@ "typeString": "uint256" }, "typeName": { - "id": 735, + "id": 691, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8118:7:0", + "src": "7156:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27537,33 +26281,33 @@ "visibility": "internal" } ], - "id": 741, + "id": 697, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 737, + "id": 693, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8142:7:0", + "referencedDeclaration": 73, + "src": "7180:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 739, + "id": 695, "indexExpression": { "argumentTypes": null, - "id": 738, + "id": 694, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8150:3:0", + "referencedDeclaration": 681, + "src": "7188:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27574,28 +26318,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8142:12:0", + "src": "7180:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 740, + "id": 696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8142:19:0", + "referencedDeclaration": 82, + "src": "7180:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8118:43:0" + "src": "7156:43:0" }, { "condition": { @@ -27604,19 +26348,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 744, + "id": 700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 742, + "id": 698, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8175:6:0", + "referencedDeclaration": 683, + "src": "7213:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27626,48 +26370,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 743, + "id": 699, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8185:13:0", + "referencedDeclaration": 692, + "src": "7223:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8175:23:0", + "src": "7213:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 748, + "id": 704, "nodeType": "IfStatement", - "src": "8171:37:0", + "src": "7209:37:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 745, + "id": 701, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "8200:6:0", + "referencedDeclaration": 1505, + "src": "7238:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 746, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -27675,15 +26419,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8200:8:0", + "src": "7238:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 747, + "id": 703, "nodeType": "ExpressionStatement", - "src": "8200:8:0" + "src": "7238:8:0" } }, { @@ -27693,19 +26437,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 751, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 705, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8222:6:0", + "referencedDeclaration": 683, + "src": "7260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27715,27 +26459,27 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 750, + "id": 706, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8231:13:0", + "referencedDeclaration": 692, + "src": "7269:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8222:22:0", + "src": "7260:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 769, + "id": 725, "nodeType": "Block", - "src": "8317:68:0", + "src": "7355:68:0", "statements": [ { "expression": { @@ -27743,12 +26487,12 @@ "arguments": [ { "argumentTypes": null, - "id": 762, + "id": 718, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8343:3:0", + "referencedDeclaration": 681, + "src": "7381:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27759,12 +26503,12 @@ "arguments": [ { "argumentTypes": null, - "id": 765, + "id": 721, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8366:6:0", + "referencedDeclaration": 683, + "src": "7404:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27780,32 +26524,32 @@ ], "expression": { "argumentTypes": null, - "id": 763, + "id": 719, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8348:13:0", + "referencedDeclaration": 692, + "src": "7386:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 764, + "id": 720, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8348:17:0", + "referencedDeclaration": 1281, + "src": "7386:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 766, + "id": 722, "isConstant": false, "isLValue": false, "isPure": false, @@ -27813,7 +26557,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:25:0", + "src": "7386:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27831,18 +26575,18 @@ "typeString": "uint256" } ], - "id": 761, + "id": 717, "name": "removeShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 856, - "src": "8331:11:0", + "referencedDeclaration": 812, + "src": "7369:11:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 767, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -27850,25 +26594,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8331:43:0", + "src": "7369:43:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 724, "nodeType": "ExpressionStatement", - "src": "8331:43:0" + "src": "7369:43:0" } ] }, - "id": 770, + "id": 726, "nodeType": "IfStatement", - "src": "8218:167:0", + "src": "7256:167:0", "trueBody": { - "id": 760, + "id": 716, "nodeType": "Block", - "src": "8246:65:0", + "src": "7284:65:0", "statements": [ { "expression": { @@ -27876,12 +26620,12 @@ "arguments": [ { "argumentTypes": null, - "id": 753, + "id": 709, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8269:3:0", + "referencedDeclaration": 681, + "src": "7307:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27892,12 +26636,12 @@ "arguments": [ { "argumentTypes": null, - "id": 756, + "id": 712, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8285:13:0", + "referencedDeclaration": 692, + "src": "7323:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27913,32 +26657,32 @@ ], "expression": { "argumentTypes": null, - "id": 754, + "id": 710, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8274:6:0", + "referencedDeclaration": 683, + "src": "7312:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 755, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8274:10:0", + "referencedDeclaration": 1281, + "src": "7312:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 757, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -27946,7 +26690,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8274:25:0", + "src": "7312:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27964,18 +26708,18 @@ "typeString": "uint256" } ], - "id": 752, + "id": 708, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "8260:8:0", + "referencedDeclaration": 770, + "src": "7298:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 758, + "id": 714, "isConstant": false, "isLValue": false, "isPure": false, @@ -27983,15 +26727,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8260:40:0", + "src": "7298:40:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 759, + "id": 715, "nodeType": "ExpressionStatement", - "src": "8260:40:0" + "src": "7298:40:0" } ] } @@ -27999,77 +26743,77 @@ ] }, "documentation": null, - "id": 772, + "id": 728, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 730, + "id": 686, "modifierName": { "argumentTypes": null, - "id": 729, + "id": 685, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8078:9:0", + "referencedDeclaration": 290, + "src": "7116:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8078:11:0" + "src": "7116:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 732, + "id": 688, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8103:3:0", + "referencedDeclaration": 681, + "src": "7141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 733, + "id": 689, "modifierName": { "argumentTypes": null, - "id": 731, + "id": 687, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8090:12:0", + "referencedDeclaration": 305, + "src": "7128:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8090:17:0" + "src": "7128:17:0" } ], "name": "allocateShares", "nodeType": "FunctionDefinition", "parameters": { - "id": 728, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 725, + "id": 681, "name": "who", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8042:11:0", + "scope": 728, + "src": "7080:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28077,10 +26821,10 @@ "typeString": "address" }, "typeName": { - "id": 724, + "id": 680, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8042:7:0", + "src": "7080:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28091,11 +26835,11 @@ }, { "constant": false, - "id": 727, + "id": 683, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8055:14:0", + "scope": 728, + "src": "7093:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28103,10 +26847,10 @@ "typeString": "uint256" }, "typeName": { - "id": 726, + "id": 682, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8055:7:0", + "src": "7093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28116,43 +26860,43 @@ "visibility": "internal" } ], - "src": "8041:29:0" + "src": "7079:29:0" }, "payable": false, "returnParameters": { - "id": 734, + "id": 690, "nodeType": "ParameterList", "parameters": [], - "src": "8108:0:0" + "src": "7146:0:0" }, - "scope": 1194, - "src": "8018:373:0", + "scope": 1146, + "src": "7056:373:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 813, + "id": 769, "nodeType": "Block", - "src": "8532:169:0", + "src": "7570:169:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 789, + "id": 745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 784, + "id": 740, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8542:11:0", + "referencedDeclaration": 58, + "src": "7580:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28165,12 +26909,12 @@ "arguments": [ { "argumentTypes": null, - "id": 787, + "id": 743, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8572:6:0", + "referencedDeclaration": 732, + "src": "7610:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28186,32 +26930,32 @@ ], "expression": { "argumentTypes": null, - "id": 785, + "id": 741, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8556:11:0", + "referencedDeclaration": 58, + "src": "7594:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 786, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8556:15:0", + "referencedDeclaration": 1305, + "src": "7594:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 788, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, @@ -28219,26 +26963,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8556:23:0", + "src": "7594:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8542:37:0", + "src": "7580:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 790, + "id": 746, "nodeType": "ExpressionStatement", - "src": "8542:37:0" + "src": "7580:37:0" }, { "expression": { "argumentTypes": null, - "id": 802, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, @@ -28249,26 +26993,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 791, + "id": 747, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8589:7:0", + "referencedDeclaration": 73, + "src": "7627:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 793, + "id": 749, "indexExpression": { "argumentTypes": null, - "id": 792, + "id": 748, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8597:3:0", + "referencedDeclaration": 730, + "src": "7635:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28279,21 +27023,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8589:12:0", + "src": "7627:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 794, + "id": 750, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8589:19:0", + "referencedDeclaration": 82, + "src": "7627:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28306,12 +27050,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 756, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8635:6:0", + "referencedDeclaration": 732, + "src": "7673:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28331,26 +27075,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 795, + "id": 751, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8611:7:0", + "referencedDeclaration": 73, + "src": "7649:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 797, + "id": 753, "indexExpression": { "argumentTypes": null, - "id": 796, + "id": 752, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8619:3:0", + "referencedDeclaration": 730, + "src": "7657:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28361,41 +27105,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8611:12:0", + "src": "7649:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 798, + "id": 754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8611:19:0", + "referencedDeclaration": 82, + "src": "7649:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 799, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8611:23:0", + "referencedDeclaration": 1305, + "src": "7649:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 801, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -28403,21 +27147,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8611:31:0", + "src": "7649:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8589:53:0", + "src": "7627:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 803, + "id": 759, "nodeType": "ExpressionStatement", - "src": "8589:53:0" + "src": "7627:53:0" }, { "expression": { @@ -28425,12 +27169,12 @@ "arguments": [ { "argumentTypes": null, - "id": 805, + "id": 761, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8661:3:0", + "referencedDeclaration": 730, + "src": "7699:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28438,12 +27182,12 @@ }, { "argumentTypes": null, - "id": 806, + "id": 762, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8666:6:0", + "referencedDeclaration": 732, + "src": "7704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28455,26 +27199,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 807, + "id": 763, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8674:7:0", + "referencedDeclaration": 73, + "src": "7712:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 809, + "id": 765, "indexExpression": { "argumentTypes": null, - "id": 808, + "id": 764, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8682:3:0", + "referencedDeclaration": 730, + "src": "7720:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28485,21 +27229,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8674:12:0", + "src": "7712:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 810, + "id": 766, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8674:19:0", + "referencedDeclaration": 82, + "src": "7712:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28521,18 +27265,18 @@ "typeString": "uint256" } ], - "id": 804, + "id": 760, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "8652:8:0", + "referencedDeclaration": 212, + "src": "7690:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 811, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -28540,90 +27284,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8652:42:0", + "src": "7690:42:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 812, + "id": 768, "nodeType": "ExpressionStatement", - "src": "8652:42:0" + "src": "7690:42:0" } ] }, "documentation": null, - "id": 814, + "id": 770, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 779, + "id": 735, "modifierName": { "argumentTypes": null, - "id": 778, + "id": 734, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8502:9:0", + "referencedDeclaration": 290, + "src": "7540:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8502:11:0" + "src": "7540:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 781, + "id": 737, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8527:3:0", + "referencedDeclaration": 730, + "src": "7565:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 782, + "id": 738, "modifierName": { "argumentTypes": null, - "id": 780, + "id": 736, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8514:12:0", + "referencedDeclaration": 305, + "src": "7552:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8514:17:0" + "src": "7552:17:0" } ], "name": "addShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 777, + "id": 733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 730, "name": "who", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8466:11:0", + "scope": 770, + "src": "7504:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28631,10 +27375,10 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8466:7:0", + "src": "7504:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28645,11 +27389,11 @@ }, { "constant": false, - "id": 776, + "id": 732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8479:14:0", + "scope": 770, + "src": "7517:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28657,10 +27401,10 @@ "typeString": "uint256" }, "typeName": { - "id": 775, + "id": 731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8479:7:0", + "src": "7517:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28670,43 +27414,43 @@ "visibility": "internal" } ], - "src": "8465:29:0" + "src": "7503:29:0" }, "payable": false, "returnParameters": { - "id": 783, + "id": 739, "nodeType": "ParameterList", "parameters": [], - "src": "8532:0:0" + "src": "7570:0:0" }, - "scope": 1194, - "src": "8448:253:0", + "scope": 1146, + "src": "7486:253:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 855, + "id": 811, "nodeType": "Block", - "src": "8845:172:0", + "src": "7883:172:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 831, + "id": 787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 826, + "id": 782, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8855:11:0", + "referencedDeclaration": 58, + "src": "7893:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28719,12 +27463,12 @@ "arguments": [ { "argumentTypes": null, - "id": 829, + "id": 785, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8885:6:0", + "referencedDeclaration": 774, + "src": "7923:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28740,32 +27484,32 @@ ], "expression": { "argumentTypes": null, - "id": 827, + "id": 783, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8869:11:0", + "referencedDeclaration": 58, + "src": "7907:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 828, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8869:15:0", + "referencedDeclaration": 1281, + "src": "7907:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 830, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -28773,26 +27517,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8869:23:0", + "src": "7907:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8855:37:0", + "src": "7893:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 832, + "id": 788, "nodeType": "ExpressionStatement", - "src": "8855:37:0" + "src": "7893:37:0" }, { "expression": { "argumentTypes": null, - "id": 844, + "id": 800, "isConstant": false, "isLValue": false, "isPure": false, @@ -28803,26 +27547,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 833, + "id": 789, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8902:7:0", + "referencedDeclaration": 73, + "src": "7940:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 835, + "id": 791, "indexExpression": { "argumentTypes": null, - "id": 834, + "id": 790, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8910:3:0", + "referencedDeclaration": 772, + "src": "7948:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28833,21 +27577,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8902:12:0", + "src": "7940:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 836, + "id": 792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8902:19:0", + "referencedDeclaration": 82, + "src": "7940:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28860,12 +27604,12 @@ "arguments": [ { "argumentTypes": null, - "id": 842, + "id": 798, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8948:6:0", + "referencedDeclaration": 774, + "src": "7986:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28885,26 +27629,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 837, + "id": 793, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8924:7:0", + "referencedDeclaration": 73, + "src": "7962:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 839, + "id": 795, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 794, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8932:3:0", + "referencedDeclaration": 772, + "src": "7970:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28915,41 +27659,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8924:12:0", + "src": "7962:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 840, + "id": 796, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8924:19:0", + "referencedDeclaration": 82, + "src": "7962:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 841, + "id": 797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8924:23:0", + "referencedDeclaration": 1281, + "src": "7962:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 843, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -28957,21 +27701,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8924:31:0", + "src": "7962:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8902:53:0", + "src": "7940:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 845, + "id": 801, "nodeType": "ExpressionStatement", - "src": "8902:53:0" + "src": "7940:53:0" }, { "expression": { @@ -28979,12 +27723,12 @@ "arguments": [ { "argumentTypes": null, - "id": 847, + "id": 803, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8977:3:0", + "referencedDeclaration": 772, + "src": "8015:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28992,12 +27736,12 @@ }, { "argumentTypes": null, - "id": 848, + "id": 804, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8982:6:0", + "referencedDeclaration": 774, + "src": "8020:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29009,26 +27753,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 849, + "id": 805, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8990:7:0", + "referencedDeclaration": 73, + "src": "8028:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 851, + "id": 807, "indexExpression": { "argumentTypes": null, - "id": 850, + "id": 806, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8998:3:0", + "referencedDeclaration": 772, + "src": "8036:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29039,21 +27783,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:12:0", + "src": "8028:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 852, + "id": 808, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8990:19:0", + "referencedDeclaration": 82, + "src": "8028:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29075,18 +27819,18 @@ "typeString": "uint256" } ], - "id": 846, + "id": 802, "name": "RemoveShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 264, - "src": "8965:11:0", + "referencedDeclaration": 220, + "src": "8003:11:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 853, + "id": 809, "isConstant": false, "isLValue": false, "isPure": false, @@ -29094,90 +27838,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8965:45:0", + "src": "8003:45:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 854, + "id": 810, "nodeType": "ExpressionStatement", - "src": "8965:45:0" + "src": "8003:45:0" } ] }, "documentation": null, - "id": 856, + "id": 812, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 821, + "id": 777, "modifierName": { "argumentTypes": null, - "id": 820, + "id": 776, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8815:9:0", + "referencedDeclaration": 290, + "src": "7853:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8815:11:0" + "src": "7853:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 823, + "id": 779, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8840:3:0", + "referencedDeclaration": 772, + "src": "7878:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 824, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 822, + "id": 778, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8827:12:0", + "referencedDeclaration": 305, + "src": "7865:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8827:17:0" + "src": "7865:17:0" } ], "name": "removeShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 819, + "id": 775, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 816, + "id": 772, "name": "who", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8779:11:0", + "scope": 812, + "src": "7817:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29185,10 +27929,10 @@ "typeString": "address" }, "typeName": { - "id": 815, + "id": 771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8779:7:0", + "src": "7817:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29199,11 +27943,11 @@ }, { "constant": false, - "id": 818, + "id": 774, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8792:14:0", + "scope": 812, + "src": "7830:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29211,10 +27955,10 @@ "typeString": "uint256" }, "typeName": { - "id": 817, + "id": 773, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8792:7:0", + "src": "7830:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29224,39 +27968,39 @@ "visibility": "internal" } ], - "src": "8778:29:0" + "src": "7816:29:0" }, "payable": false, "returnParameters": { - "id": 825, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "8845:0:0" + "src": "7883:0:0" }, - "scope": 1194, - "src": "8758:259:0", + "scope": 1146, + "src": "7796:259:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 923, + "id": 879, "nodeType": "Block", - "src": "9430:392:0", + "src": "8468:392:0", "statements": [ { "assignments": [ - 866 + 822 ], "declarations": [ { "constant": false, - "id": 866, + "id": 822, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9440:16:0", + "scope": 880, + "src": "8478:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29264,10 +28008,10 @@ "typeString": "uint256" }, "typeName": { - "id": 865, + "id": 821, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9440:7:0", + "src": "8478:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29277,7 +28021,7 @@ "visibility": "internal" } ], - "id": 871, + "id": 827, "initialValue": { "argumentTypes": null, "arguments": [ @@ -29285,18 +28029,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 868, + "id": 824, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9492:3:0", + "referencedDeclaration": 1500, + "src": "8530:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 869, + "id": 825, "isConstant": false, "isLValue": false, "isPure": false, @@ -29304,7 +28048,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9492:10:0", + "src": "8530:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29318,18 +28062,18 @@ "typeString": "address" } ], - "id": 867, + "id": 823, "name": "calculateTotalWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1113, - "src": "9459:32:0", + "referencedDeclaration": 1066, + "src": "8497:32:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 870, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -29337,14 +28081,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9459:44:0", + "src": "8497:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9440:63:0" + "src": "8478:63:0" }, { "condition": { @@ -29353,19 +28097,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 881, + "id": 837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 872, + "id": 828, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9517:6:0", + "referencedDeclaration": 814, + "src": "8555:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29382,34 +28126,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 875, + "id": 831, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9539:7:0", + "referencedDeclaration": 73, + "src": "8577:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 878, + "id": 834, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 876, + "id": 832, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9547:3:0", + "referencedDeclaration": 1500, + "src": "8585:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 877, + "id": 833, "isConstant": false, "isLValue": false, "isPure": false, @@ -29417,7 +28161,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9547:10:0", + "src": "8585:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29428,21 +28172,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9539:19:0", + "src": "8577:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 879, + "id": 835, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9539:29:0", + "referencedDeclaration": 84, + "src": "8577:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29458,32 +28202,32 @@ ], "expression": { "argumentTypes": null, - "id": 873, + "id": 829, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "9526:8:0", + "referencedDeclaration": 822, + "src": "8564:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 874, + "id": 830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "9526:12:0", + "referencedDeclaration": 1281, + "src": "8564:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 880, + "id": 836, "isConstant": false, "isLValue": false, "isPure": false, @@ -29491,43 +28235,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9526:43:0", + "src": "8564:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9517:52:0", + "src": "8555:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 885, + "id": 841, "nodeType": "IfStatement", - "src": "9513:66:0", + "src": "8551:66:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 882, + "id": 838, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "9571:6:0", + "referencedDeclaration": 1505, + "src": "8609:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 883, + "id": 839, "isConstant": false, "isLValue": false, "isPure": false, @@ -29535,21 +28279,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9571:8:0", + "src": "8609:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 884, + "id": 840, "nodeType": "ExpressionStatement", - "src": "9571:8:0" + "src": "8609:8:0" } }, { "expression": { "argumentTypes": null, - "id": 899, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -29560,34 +28304,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 886, + "id": 842, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9598:7:0", + "referencedDeclaration": 73, + "src": "8636:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 889, + "id": 845, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 887, + "id": 843, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9606:3:0", + "referencedDeclaration": 1500, + "src": "8644:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 888, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -29595,7 +28339,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9606:10:0", + "src": "8644:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29606,21 +28350,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9598:19:0", + "src": "8636:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 890, + "id": 846, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9598:29:0", + "referencedDeclaration": 84, + "src": "8636:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29633,12 +28377,12 @@ "arguments": [ { "argumentTypes": null, - "id": 897, + "id": 853, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9664:6:0", + "referencedDeclaration": 814, + "src": "8702:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29658,34 +28402,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 891, + "id": 847, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9630:7:0", + "referencedDeclaration": 73, + "src": "8668:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 894, + "id": 850, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 892, + "id": 848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9638:3:0", + "referencedDeclaration": 1500, + "src": "8676:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 893, + "id": 849, "isConstant": false, "isLValue": false, "isPure": false, @@ -29693,7 +28437,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9638:10:0", + "src": "8676:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29704,41 +28448,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9630:19:0", + "src": "8668:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 895, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9630:29:0", + "referencedDeclaration": 84, + "src": "8668:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 896, + "id": 852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9630:33:0", + "referencedDeclaration": 1305, + "src": "8668:33:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 898, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, @@ -29746,38 +28490,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9630:41:0", + "src": "8668:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9598:73:0", + "src": "8636:73:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 900, + "id": 856, "nodeType": "ExpressionStatement", - "src": "9598:73:0" + "src": "8636:73:0" }, { "expression": { "argumentTypes": null, - "id": 906, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 901, + "id": 857, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9681:14:0", + "referencedDeclaration": 60, + "src": "8719:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29790,12 +28534,12 @@ "arguments": [ { "argumentTypes": null, - "id": 904, + "id": 860, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9717:6:0", + "referencedDeclaration": 814, + "src": "8755:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29811,32 +28555,32 @@ ], "expression": { "argumentTypes": null, - "id": 902, + "id": 858, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9698:14:0", + "referencedDeclaration": 60, + "src": "8736:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 903, + "id": 859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9698:18:0", + "referencedDeclaration": 1305, + "src": "8736:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 905, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -29844,21 +28588,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9698:26:0", + "src": "8736:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:43:0", + "src": "8719:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 907, + "id": 863, "nodeType": "ExpressionStatement", - "src": "9681:43:0" + "src": "8719:43:0" }, { "expression": { @@ -29866,12 +28610,12 @@ "arguments": [ { "argumentTypes": null, - "id": 913, + "id": 869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9754:6:0", + "referencedDeclaration": 814, + "src": "8792:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29889,18 +28633,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 908, + "id": 864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9734:3:0", + "referencedDeclaration": 1500, + "src": "8772:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 911, + "id": 867, "isConstant": false, "isLValue": false, "isPure": false, @@ -29908,13 +28652,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:10:0", + "src": "8772:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 912, + "id": 868, "isConstant": false, "isLValue": false, "isPure": false, @@ -29922,13 +28666,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:19:0", + "src": "8772:19:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 914, + "id": 870, "isConstant": false, "isLValue": false, "isPure": false, @@ -29936,15 +28680,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9734:27:0", + "src": "8772:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 915, + "id": 871, "nodeType": "ExpressionStatement", - "src": "9734:27:0" + "src": "8772:27:0" }, { "expression": { @@ -29954,18 +28698,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 873, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9780:3:0", + "referencedDeclaration": 1500, + "src": "8818:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 918, + "id": 874, "isConstant": false, "isLValue": false, "isPure": false, @@ -29973,7 +28717,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9780:10:0", + "src": "8818:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29981,12 +28725,12 @@ }, { "argumentTypes": null, - "id": 919, + "id": 875, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9792:6:0", + "referencedDeclaration": 814, + "src": "8830:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29994,12 +28738,12 @@ }, { "argumentTypes": null, - "id": 920, + "id": 876, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9800:14:0", + "referencedDeclaration": 60, + "src": "8838:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30021,18 +28765,18 @@ "typeString": "uint256" } ], - "id": 916, + "id": 872, "name": "Withdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "9771:8:0", + "referencedDeclaration": 194, + "src": "8809:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 921, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -30040,20 +28784,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9771:44:0", + "src": "8809:44:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 922, + "id": 878, "nodeType": "ExpressionStatement", - "src": "9771:44:0" + "src": "8809:44:0" } ] }, "documentation": null, - "id": 924, + "id": 880, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -30064,18 +28808,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 861, + "id": 817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9418:3:0", + "referencedDeclaration": 1500, + "src": "8456:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 862, + "id": 818, "isConstant": false, "isLValue": false, "isPure": false, @@ -30083,44 +28827,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9418:10:0", + "src": "8456:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 863, + "id": 819, "modifierName": { "argumentTypes": null, - "id": 860, + "id": 816, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9405:12:0", + "referencedDeclaration": 305, + "src": "8443:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9405:24:0" + "src": "8443:24:0" } ], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 859, + "id": 815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 858, + "id": 814, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9382:14:0", + "scope": 880, + "src": "8420:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30128,10 +28872,10 @@ "typeString": "uint256" }, "typeName": { - "id": 857, + "id": 813, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9382:7:0", + "src": "8420:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30141,39 +28885,39 @@ "visibility": "internal" } ], - "src": "9381:16:0" + "src": "8419:16:0" }, "payable": false, "returnParameters": { - "id": 864, + "id": 820, "nodeType": "ParameterList", "parameters": [], - "src": "9430:0:0" + "src": "8468:0:0" }, - "scope": 1194, - "src": "9364:458:0", + "scope": 1146, + "src": "8402:458:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1011, + "id": 964, "nodeType": "Block", - "src": "9958:503:0", + "src": "8997:458:0", "statements": [ { "assignments": [ - 936 + 892 ], "declarations": [ { "constant": false, - "id": 936, + "id": 892, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9968:16:0", + "scope": 965, + "src": "9007:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30181,10 +28925,10 @@ "typeString": "uint256" }, "typeName": { - "id": 935, + "id": 891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9968:7:0", + "src": "9007:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30194,7 +28938,7 @@ "visibility": "internal" } ], - "id": 942, + "id": 898, "initialValue": { "argumentTypes": null, "arguments": [ @@ -30202,18 +28946,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 938, + "id": 894, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10025:3:0", + "referencedDeclaration": 1500, + "src": "9064:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 939, + "id": 895, "isConstant": false, "isLValue": false, "isPure": false, @@ -30221,7 +28965,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10025:10:0", + "src": "9064:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30229,12 +28973,12 @@ }, { "argumentTypes": null, - "id": 940, + "id": 896, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10037:5:0", + "referencedDeclaration": 884, + "src": "9076:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30252,18 +28996,18 @@ "typeString": "address" } ], - "id": 937, + "id": 893, "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "9987:37:0", + "referencedDeclaration": 1116, + "src": "9026:37:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 941, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -30271,14 +29015,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9987:56:0", + "src": "9026:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9968:75:0" + "src": "9007:75:0" }, { "condition": { @@ -30287,19 +29031,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 954, + "id": 910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 943, + "id": 899, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10057:6:0", + "referencedDeclaration": 882, + "src": "9096:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30318,34 +29062,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 946, + "id": 902, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10079:7:0", + "referencedDeclaration": 73, + "src": "9118:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 949, + "id": 905, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 903, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10087:3:0", + "referencedDeclaration": 1500, + "src": "9126:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 948, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, @@ -30353,7 +29097,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10087:10:0", + "src": "9126:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30364,35 +29108,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:19:0", + "src": "9118:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 950, + "id": 906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10079:35:0", + "referencedDeclaration": 90, + "src": "9118:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 952, + "id": 908, "indexExpression": { "argumentTypes": null, - "id": 951, + "id": 907, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10115:5:0", + "referencedDeclaration": 884, + "src": "9154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30403,7 +29147,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:42:0", + "src": "9118:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30419,32 +29163,32 @@ ], "expression": { "argumentTypes": null, - "id": 944, + "id": 900, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "10066:8:0", + "referencedDeclaration": 892, + "src": "9105:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 945, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "10066:12:0", + "referencedDeclaration": 1281, + "src": "9105:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 953, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -30452,43 +29196,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10066:56:0", + "src": "9105:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10057:65:0", + "src": "9096:65:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 958, + "id": 914, "nodeType": "IfStatement", - "src": "10053:79:0", + "src": "9092:79:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 955, + "id": 911, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10124:6:0", + "referencedDeclaration": 1505, + "src": "9163:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 956, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -30496,21 +29240,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10124:8:0", + "src": "9163:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 957, + "id": 913, "nodeType": "ExpressionStatement", - "src": "10124:8:0" + "src": "9163:8:0" } }, { "expression": { "argumentTypes": null, - "id": 976, + "id": 932, "isConstant": false, "isLValue": false, "isPure": false, @@ -30523,34 +29267,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 959, + "id": 915, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10143:7:0", + "referencedDeclaration": 73, + "src": "9182:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 962, + "id": 918, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 960, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10151:3:0", + "referencedDeclaration": 1500, + "src": "9190:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 961, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -30558,7 +29302,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10151:10:0", + "src": "9190:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30569,35 +29313,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10143:19:0", + "src": "9182:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 963, + "id": 919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10143:35:0", + "referencedDeclaration": 90, + "src": "9182:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 965, + "id": 921, "indexExpression": { "argumentTypes": null, - "id": 964, + "id": 920, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10179:5:0", + "referencedDeclaration": 884, + "src": "9218:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30608,7 +29352,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10143:42:0", + "src": "9182:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30621,12 +29365,12 @@ "arguments": [ { "argumentTypes": null, - "id": 974, + "id": 930, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10235:6:0", + "referencedDeclaration": 882, + "src": "9274:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30648,34 +29392,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 966, + "id": 922, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10188:7:0", + "referencedDeclaration": 73, + "src": "9227:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 969, + "id": 925, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 923, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10196:3:0", + "referencedDeclaration": 1500, + "src": "9235:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 968, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -30683,7 +29427,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10196:10:0", + "src": "9235:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30694,35 +29438,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:19:0", + "src": "9227:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 970, + "id": 926, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10188:35:0", + "referencedDeclaration": 90, + "src": "9227:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 972, + "id": 928, "indexExpression": { "argumentTypes": null, - "id": 971, + "id": 927, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10224:5:0", + "referencedDeclaration": 884, + "src": "9263:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30733,27 +29477,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:42:0", + "src": "9227:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 973, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10188:46:0", + "referencedDeclaration": 1305, + "src": "9227:46:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 975, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -30761,81 +29505,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10188:54:0", + "src": "9227:54:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10143:99:0", + "src": "9182:99:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 977, + "id": 933, "nodeType": "ExpressionStatement", - "src": "10143:99:0" + "src": "9182:99:0" }, { "expression": { "argumentTypes": null, - "id": 989, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10252:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "id": 979, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10259:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10252:13:0", + "id": 934, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9291:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 936, + "indexExpression": { + "argumentTypes": null, + "id": 935, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9298:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 981, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10252:28:0", + "nodeType": "IndexAccess", + "src": "9291:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30848,12 +29576,12 @@ "arguments": [ { "argumentTypes": null, - "id": 987, + "id": 941, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10316:6:0", + "referencedDeclaration": 882, + "src": "9325:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30869,75 +29597,59 @@ ], "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 982, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10283:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 984, - "indexExpression": { - "argumentTypes": null, - "id": 983, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10283:13:0", + "id": 937, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9307:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 939, + "indexExpression": { + "argumentTypes": null, + "id": 938, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9314:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 985, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10283:28:0", + "nodeType": "IndexAccess", + "src": "9307:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 986, + "id": 940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10283:32:0", + "referencedDeclaration": 1305, + "src": "9307:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 988, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -30945,21 +29657,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10283:40:0", + "src": "9307:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10252:71:0", + "src": "9291:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 990, + "id": 944, "nodeType": "ExpressionStatement", - "src": "10252:71:0" + "src": "9291:41:0" }, { "expression": { @@ -30969,18 +29681,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 995, + "id": 949, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10355:3:0", + "referencedDeclaration": 1500, + "src": "9364:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 996, + "id": 950, "isConstant": false, "isLValue": false, "isPure": false, @@ -30988,7 +29700,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10355:10:0", + "src": "9364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30996,12 +29708,12 @@ }, { "argumentTypes": null, - "id": 997, + "id": 951, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10367:6:0", + "referencedDeclaration": 882, + "src": "9376:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31024,12 +29736,12 @@ "arguments": [ { "argumentTypes": null, - "id": 992, + "id": 946, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10339:5:0", + "referencedDeclaration": 884, + "src": "9348:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31043,18 +29755,18 @@ "typeString": "address" } ], - "id": 991, + "id": 945, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "10333:5:0", + "referencedDeclaration": 1213, + "src": "9342:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 993, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, @@ -31062,27 +29774,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:12:0", + "src": "9342:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 994, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 1212, - "src": "10333:21:0", + "referencedDeclaration": 1164, + "src": "9342:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 998, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -31090,15 +29802,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:41:0", + "src": "9342:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 999, + "id": 953, "nodeType": "ExpressionStatement", - "src": "10333:41:0" + "src": "9342:41:0" }, { "expression": { @@ -31108,18 +29820,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1001, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10398:3:0", + "referencedDeclaration": 1500, + "src": "9407:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1002, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -31127,7 +29839,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10398:10:0", + "src": "9407:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31135,12 +29847,12 @@ }, { "argumentTypes": null, - "id": 1003, + "id": 957, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10410:6:0", + "referencedDeclaration": 882, + "src": "9419:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31148,68 +29860,52 @@ }, { "argumentTypes": null, - "id": 1004, + "id": 958, "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10418:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1005, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10425:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1007, - "indexExpression": { - "argumentTypes": null, - "id": 1006, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10425:13:0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9427:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 959, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9434:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "id": 960, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9441:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1008, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10425:28:0", + "nodeType": "IndexAccess", + "src": "9434:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31235,18 +29931,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 954, "name": "TokenWithdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "10384:13:0", + "referencedDeclaration": 204, + "src": "9393:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,address,uint256)" } }, - "id": 1009, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -31254,20 +29950,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10384:70:0", + "src": "9393:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1010, + "id": 963, "nodeType": "ExpressionStatement", - "src": "10384:70:0" + "src": "9393:55:0" } ] }, "documentation": null, - "id": 1012, + "id": 965, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -31278,18 +29974,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 931, + "id": 887, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9946:3:0", + "referencedDeclaration": 1500, + "src": "8985:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 932, + "id": 888, "isConstant": false, "isLValue": false, "isPure": false, @@ -31297,44 +29993,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9946:10:0", + "src": "8985:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 933, + "id": 889, "modifierName": { "argumentTypes": null, - "id": 930, + "id": 886, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9933:12:0", + "referencedDeclaration": 305, + "src": "8972:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9933:24:0" + "src": "8972:24:0" } ], "name": "withdrawToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 929, + "id": 885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 926, + "id": 882, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9895:14:0", + "scope": 965, + "src": "8934:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31342,10 +30038,10 @@ "typeString": "uint256" }, "typeName": { - "id": 925, + "id": 881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9895:7:0", + "src": "8934:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31356,11 +30052,11 @@ }, { "constant": false, - "id": 928, + "id": 884, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9911:13:0", + "scope": 965, + "src": "8950:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31368,10 +30064,10 @@ "typeString": "address" }, "typeName": { - "id": 927, + "id": 883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9911:7:0", + "src": "8950:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31381,26 +30077,26 @@ "visibility": "internal" } ], - "src": "9894:31:0" + "src": "8933:31:0" }, "payable": false, "returnParameters": { - "id": 934, + "id": 890, "nodeType": "ParameterList", "parameters": [], - "src": "9958:0:0" + "src": "8997:0:0" }, - "scope": 1194, - "src": "9872:589:0", + "scope": 1146, + "src": "8911:544:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1050, + "id": 1003, "nodeType": "Block", - "src": "10726:267:0", + "src": "9720:267:0", "statements": [ { "condition": { @@ -31409,19 +30105,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1024, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1021, + "id": 974, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10740:6:0", + "referencedDeclaration": 967, + "src": "9734:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31434,18 +30130,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1022, + "id": 975, "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "10749:39:0", + "referencedDeclaration": 1127, + "src": "9743:39:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1023, + "id": 976, "isConstant": false, "isLValue": false, "isPure": false, @@ -31453,43 +30149,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10749:41:0", + "src": "9743:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10740:50:0", + "src": "9734:50:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1028, + "id": 981, "nodeType": "IfStatement", - "src": "10736:64:0", + "src": "9730:64:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 1025, + "id": 978, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10792:6:0", + "referencedDeclaration": 1505, + "src": "9786:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1026, + "id": 979, "isConstant": false, "isLValue": false, "isPure": false, @@ -31497,33 +30193,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10792:8:0", + "src": "9786:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1027, + "id": 980, "nodeType": "ExpressionStatement", - "src": "10792:8:0" + "src": "9786:8:0" } }, { "expression": { "argumentTypes": null, - "id": 1034, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1029, + "id": 982, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10819:22:0", + "referencedDeclaration": 69, + "src": "9813:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31536,12 +30232,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1032, + "id": 985, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10871:6:0", + "referencedDeclaration": 967, + "src": "9865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31557,32 +30253,32 @@ ], "expression": { "argumentTypes": null, - "id": 1030, + "id": 983, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10844:22:0", + "referencedDeclaration": 69, + "src": "9838:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1031, + "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10844:26:0", + "referencedDeclaration": 1305, + "src": "9838:26:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1033, + "id": 986, "isConstant": false, "isLValue": false, "isPure": false, @@ -31590,21 +30286,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10844:34:0", + "src": "9838:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10819:59:0", + "src": "9813:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1035, + "id": 988, "nodeType": "ExpressionStatement", - "src": "10819:59:0" + "src": "9813:59:0" }, { "expression": { @@ -31612,12 +30308,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1039, + "id": 992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10900:6:0", + "referencedDeclaration": 967, + "src": "9894:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31633,18 +30329,18 @@ ], "expression": { "argumentTypes": null, - "id": 1036, + "id": 989, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10888:2:0", + "referencedDeclaration": 969, + "src": "9882:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1038, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -31652,13 +30348,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10888:11:0", + "src": "9882:11:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1040, + "id": 993, "isConstant": false, "isLValue": false, "isPure": false, @@ -31666,15 +30362,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10888:19:0", + "src": "9882:19:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 994, "nodeType": "ExpressionStatement", - "src": "10888:19:0" + "src": "9882:19:0" }, { "expression": { @@ -31684,18 +30380,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1043, + "id": 996, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10939:3:0", + "referencedDeclaration": 1500, + "src": "9933:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1044, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, @@ -31703,7 +30399,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10939:10:0", + "src": "9933:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31711,12 +30407,12 @@ }, { "argumentTypes": null, - "id": 1045, + "id": 998, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10951:2:0", + "referencedDeclaration": 969, + "src": "9945:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31724,12 +30420,12 @@ }, { "argumentTypes": null, - "id": 1046, + "id": 999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10955:6:0", + "referencedDeclaration": 967, + "src": "9949:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31737,12 +30433,12 @@ }, { "argumentTypes": null, - "id": 1047, + "id": 1000, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10963:22:0", + "referencedDeclaration": 69, + "src": "9957:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31768,18 +30464,18 @@ "typeString": "uint256" } ], - "id": 1042, + "id": 995, "name": "WithdrawSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 304, - "src": "10917:21:0", + "referencedDeclaration": 260, + "src": "9911:21:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 1048, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -31787,57 +30483,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10917:69:0", + "src": "9911:69:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "10917:69:0" + "src": "9911:69:0" } ] }, "documentation": null, - "id": 1051, + "id": 1004, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 1019, + "id": 972, "modifierName": { "argumentTypes": null, - "id": 1018, + "id": 971, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "10714:9:0", + "referencedDeclaration": 290, + "src": "9708:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "10714:11:0" + "src": "9708:11:0" } ], "name": "withdrawSharedExpense", "nodeType": "FunctionDefinition", "parameters": { - "id": 1017, + "id": 970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1014, + "id": 967, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10679:14:0", + "scope": 1004, + "src": "9673:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31845,10 +30541,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1013, + "id": 966, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10679:7:0", + "src": "9673:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31859,11 +30555,11 @@ }, { "constant": false, - "id": 1016, + "id": 969, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10695:10:0", + "scope": 1004, + "src": "9689:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31871,10 +30567,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10695:7:0", + "src": "9689:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31884,39 +30580,39 @@ "visibility": "internal" } ], - "src": "10678:28:0" + "src": "9672:28:0" }, "payable": false, "returnParameters": { - "id": 1020, + "id": 973, "nodeType": "ParameterList", "parameters": [], - "src": "10726:0:0" + "src": "9720:0:0" }, - "scope": 1194, - "src": "10648:345:0", + "scope": 1146, + "src": "9642:345:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1112, + "id": 1065, "nodeType": "Block", - "src": "11276:651:0", + "src": "10270:651:0", "statements": [ { "assignments": [ - 1062 + 1015 ], "declarations": [ { "constant": false, - "id": 1062, + "id": 1015, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11424:18:0", + "scope": 1066, + "src": "10418:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31924,10 +30620,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1061, + "id": 1014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11424:7:0", + "src": "10418:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31937,18 +30633,18 @@ "visibility": "internal" } ], - "id": 1068, + "id": 1021, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1066, + "id": 1019, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "11462:14:0", + "referencedDeclaration": 60, + "src": "10456:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31966,18 +30662,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1063, + "id": 1016, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "11445:4:0", + "referencedDeclaration": 1513, + "src": "10439:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 1064, + "id": 1017, "isConstant": false, "isLValue": false, "isPure": false, @@ -31985,27 +30681,27 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "11445:12:0", + "src": "10439:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1065, + "id": 1018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11445:16:0", + "referencedDeclaration": 1305, + "src": "10439:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1067, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": false, @@ -32013,31 +30709,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11445:32:0", + "src": "10439:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11424:53:0" + "src": "10418:53:0" }, { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1069, + "id": 1022, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11487:10:0", + "referencedDeclaration": 1015, + "src": "10481:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32050,12 +30746,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1072, + "id": 1025, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "11515:13:0", + "referencedDeclaration": 67, + "src": "10509:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32071,32 +30767,32 @@ ], "expression": { "argumentTypes": null, - "id": 1070, + "id": 1023, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11500:10:0", + "referencedDeclaration": 1015, + "src": "10494:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1071, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "11500:14:0", + "referencedDeclaration": 1281, + "src": "10494:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1073, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -32104,38 +30800,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11500:29:0", + "src": "10494:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11487:42:0", + "src": "10481:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1075, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "11487:42:0" + "src": "10481:42:0" }, { "expression": { "argumentTypes": null, - "id": 1081, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1076, + "id": 1029, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11539:10:0", + "referencedDeclaration": 1015, + "src": "10533:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32148,12 +30844,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1079, + "id": 1032, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "11567:22:0", + "referencedDeclaration": 69, + "src": "10561:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32169,32 +30865,32 @@ ], "expression": { "argumentTypes": null, - "id": 1077, + "id": 1030, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11552:10:0", + "referencedDeclaration": 1015, + "src": "10546:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11552:14:0", + "referencedDeclaration": 1305, + "src": "10546:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1080, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, @@ -32202,34 +30898,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11552:38:0", + "src": "10546:38:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11539:51:0", + "src": "10533:51:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1082, + "id": 1035, "nodeType": "ExpressionStatement", - "src": "11539:51:0" + "src": "10533:51:0" }, { "assignments": [ - 1084 + 1037 ], "declarations": [ { "constant": false, - "id": 1084, + "id": 1037, "name": "ethPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11710:22:0", + "scope": 1066, + "src": "10704:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32237,10 +30933,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1083, + "id": 1036, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11710:7:0", + "src": "10704:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32250,18 +30946,18 @@ "visibility": "internal" } ], - "id": 1090, + "id": 1043, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1087, + "id": 1040, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "11754:11:0", + "referencedDeclaration": 58, + "src": "10748:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32269,12 +30965,12 @@ }, { "argumentTypes": null, - "id": 1088, + "id": 1041, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11767:9:0", + "referencedDeclaration": 65, + "src": "10761:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32294,32 +30990,32 @@ ], "expression": { "argumentTypes": null, - "id": 1085, + "id": 1038, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11735:10:0", + "referencedDeclaration": 1015, + "src": "10729:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1086, + "id": 1039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "11735:18:0", + "referencedDeclaration": 1344, + "src": "10729:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1089, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -32327,27 +31023,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11735:42:0", + "src": "10729:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11710:67:0" + "src": "10704:67:0" }, { "assignments": [ - 1092 + 1045 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1045, "name": "ethPPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11788:14:0", + "scope": 1066, + "src": "10782:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32355,10 +31051,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1091, + "id": 1044, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11788:7:0", + "src": "10782:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32368,7 +31064,7 @@ "visibility": "internal" } ], - "id": 1100, + "id": 1053, "initialValue": { "argumentTypes": null, "arguments": [ @@ -32378,26 +31074,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1095, + "id": 1048, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "11824:7:0", + "referencedDeclaration": 73, + "src": "10818:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1097, + "id": 1050, "indexExpression": { "argumentTypes": null, - "id": 1096, + "id": 1049, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11832:3:0", + "referencedDeclaration": 1006, + "src": "10826:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32408,21 +31104,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11824:12:0", + "src": "10818:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1098, + "id": 1051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11824:19:0", + "referencedDeclaration": 82, + "src": "10818:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32438,32 +31134,32 @@ ], "expression": { "argumentTypes": null, - "id": 1093, + "id": 1046, "name": "ethPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "11805:14:0", + "referencedDeclaration": 1037, + "src": "10799:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1094, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "11805:18:0", + "referencedDeclaration": 1243, + "src": "10799:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1099, + "id": 1052, "isConstant": false, "isLValue": false, "isPure": false, @@ -32471,27 +31167,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11805:39:0", + "src": "10799:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11788:56:0" + "src": "10782:56:0" }, { "assignments": [ - 1102 + 1055 ], "declarations": [ { "constant": false, - "id": 1102, + "id": 1055, "name": "ethVal", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11854:14:0", + "scope": 1066, + "src": "10848:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32499,10 +31195,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1101, + "id": 1054, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11854:7:0", + "src": "10848:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32512,7 +31208,7 @@ "visibility": "internal" } ], - "id": 1109, + "id": 1062, "initialValue": { "argumentTypes": null, "arguments": [ @@ -32522,7 +31218,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1107, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": true, @@ -32530,14 +31226,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1105, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11882:2:0", + "src": "10876:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -32549,18 +31245,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1106, + "id": 1059, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11886:9:0", + "referencedDeclaration": 65, + "src": "10880:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11882:13:0", + "src": "10876:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32576,32 +31272,32 @@ ], "expression": { "argumentTypes": null, - "id": 1103, + "id": 1056, "name": "ethPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "11871:6:0", + "referencedDeclaration": 1045, + "src": "10865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1104, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "11871:10:0", + "referencedDeclaration": 1261, + "src": "10865:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1108, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -32609,38 +31305,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11871:25:0", + "src": "10865:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11854:42:0" + "src": "10848:42:0" }, { "expression": { "argumentTypes": null, - "id": 1110, + "id": 1063, "name": "ethVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "11914:6:0", + "referencedDeclaration": 1055, + "src": "10908:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1060, - "id": 1111, + "functionReturnParameters": 1013, + "id": 1064, "nodeType": "Return", - "src": "11907:13:0" + "src": "10901:13:0" } ] }, "documentation": null, - "id": 1113, + "id": 1066, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -32649,49 +31345,49 @@ "arguments": [ { "argumentTypes": null, - "id": 1056, + "id": 1009, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11253:3:0", + "referencedDeclaration": 1006, + "src": "10247:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 1057, + "id": 1010, "modifierName": { "argumentTypes": null, - "id": 1055, + "id": 1008, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "11240:12:0", + "referencedDeclaration": 305, + "src": "10234:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "11240:17:0" + "src": "10234:17:0" } ], "name": "calculateTotalWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1054, + "id": 1007, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1053, + "id": 1006, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11211:11:0", + "scope": 1066, + "src": "10205:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32699,10 +31395,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 1005, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11211:7:0", + "src": "10205:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32712,20 +31408,20 @@ "visibility": "internal" } ], - "src": "11210:13:0" + "src": "10204:13:0" }, "payable": false, "returnParameters": { - "id": 1060, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1059, + "id": 1012, "name": "", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11267:7:0", + "scope": 1066, + "src": "10261:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32733,10 +31429,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1058, + "id": 1011, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11267:7:0", + "src": "10261:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32746,32 +31442,32 @@ "visibility": "internal" } ], - "src": "11266:9:0" + "src": "10260:9:0" }, - "scope": 1194, - "src": "11169:758:0", + "scope": 1146, + "src": "10163:758:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1163, + "id": 1115, "nodeType": "Block", - "src": "12042:418:0", + "src": "11036:403:0", "statements": [ { "assignments": [ - 1123 + 1076 ], "declarations": [ { "constant": false, - "id": 1123, + "id": 1076, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12052:18:0", + "scope": 1116, + "src": "11046:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32779,10 +31475,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1122, + "id": 1075, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12052:7:0", + "src": "11046:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32792,61 +31488,45 @@ "visibility": "internal" } ], - "id": 1133, + "id": 1085, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1128, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "12102:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1130, - "indexExpression": { - "argumentTypes": null, - "id": 1129, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12109:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12102:13:0", + "id": 1081, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "11096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 1083, + "indexExpression": { + "argumentTypes": null, + "id": 1082, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1070, + "src": "11103:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1131, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "12102:28:0", + "nodeType": "IndexAccess", + "src": "11096:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32865,12 +31545,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1125, + "id": 1078, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12091:5:0", + "referencedDeclaration": 1070, + "src": "11085:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32884,18 +31564,18 @@ "typeString": "address" } ], - "id": 1124, + "id": 1077, "name": "checkERC20Balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 452, - "src": "12073:17:0", + "referencedDeclaration": 408, + "src": "11067:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1126, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -32903,27 +31583,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:24:0", + "src": "11067:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1127, + "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "12073:28:0", + "referencedDeclaration": 1305, + "src": "11067:28:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1132, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, @@ -32931,27 +31611,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:58:0", + "src": "11067:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12052:79:0" + "src": "11046:64:0" }, { "assignments": [ - 1135 + 1087 ], "declarations": [ { "constant": false, - "id": 1135, + "id": 1087, "name": "tokPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12243:22:0", + "scope": 1116, + "src": "11222:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32959,10 +31639,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1134, + "id": 1086, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12243:7:0", + "src": "11222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32972,18 +31652,18 @@ "visibility": "internal" } ], - "id": 1141, + "id": 1093, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1138, + "id": 1090, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "12287:11:0", + "referencedDeclaration": 58, + "src": "11266:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32991,12 +31671,12 @@ }, { "argumentTypes": null, - "id": 1139, + "id": 1091, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12300:9:0", + "referencedDeclaration": 65, + "src": "11279:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33016,32 +31696,32 @@ ], "expression": { "argumentTypes": null, - "id": 1136, + "id": 1088, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1123, - "src": "12268:10:0", + "referencedDeclaration": 1076, + "src": "11247:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1137, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12268:18:0", + "referencedDeclaration": 1344, + "src": "11247:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1140, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": false, @@ -33049,27 +31729,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12268:42:0", + "src": "11247:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12243:67:0" + "src": "11222:67:0" }, { "assignments": [ - 1143 + 1095 ], "declarations": [ { "constant": false, - "id": 1143, + "id": 1095, "name": "tokPPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12321:14:0", + "scope": 1116, + "src": "11300:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33077,10 +31757,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1142, + "id": 1094, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12321:7:0", + "src": "11300:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33090,7 +31770,7 @@ "visibility": "internal" } ], - "id": 1151, + "id": 1103, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33100,26 +31780,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1146, + "id": 1098, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "12357:7:0", + "referencedDeclaration": 73, + "src": "11336:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1148, + "id": 1100, "indexExpression": { "argumentTypes": null, - "id": 1147, + "id": 1099, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1115, - "src": "12365:3:0", + "referencedDeclaration": 1068, + "src": "11344:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33130,21 +31810,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12357:12:0", + "src": "11336:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1149, + "id": 1101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "12357:19:0", + "referencedDeclaration": 82, + "src": "11336:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33160,32 +31840,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1096, "name": "tokPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1135, - "src": "12338:14:0", + "referencedDeclaration": 1087, + "src": "11317:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1145, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "12338:18:0", + "referencedDeclaration": 1243, + "src": "11317:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1150, + "id": 1102, "isConstant": false, "isLValue": false, "isPure": false, @@ -33193,27 +31873,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12338:39:0", + "src": "11317:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12321:56:0" + "src": "11300:56:0" }, { "assignments": [ - 1153 + 1105 ], "declarations": [ { "constant": false, - "id": 1153, + "id": 1105, "name": "tokVal", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12387:14:0", + "scope": 1116, + "src": "11366:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33221,10 +31901,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1152, + "id": 1104, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12387:7:0", + "src": "11366:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33234,7 +31914,7 @@ "visibility": "internal" } ], - "id": 1160, + "id": 1112, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33244,7 +31924,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1158, + "id": 1110, "isConstant": false, "isLValue": false, "isPure": true, @@ -33252,14 +31932,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1156, + "id": 1108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12415:2:0", + "src": "11394:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -33271,18 +31951,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1157, + "id": 1109, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12419:9:0", + "referencedDeclaration": 65, + "src": "11398:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12415:13:0", + "src": "11394:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33298,32 +31978,32 @@ ], "expression": { "argumentTypes": null, - "id": 1154, + "id": 1106, "name": "tokPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "12404:6:0", + "referencedDeclaration": 1095, + "src": "11383:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1155, + "id": 1107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "12404:10:0", + "referencedDeclaration": 1261, + "src": "11383:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1159, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -33331,38 +32011,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12404:25:0", + "src": "11383:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12387:42:0" + "src": "11366:42:0" }, { "expression": { "argumentTypes": null, - "id": 1161, + "id": 1113, "name": "tokVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1153, - "src": "12447:6:0", + "referencedDeclaration": 1105, + "src": "11426:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1121, - "id": 1162, + "functionReturnParameters": 1074, + "id": 1114, "nodeType": "Return", - "src": "12440:13:0" + "src": "11419:13:0" } ] }, "documentation": null, - "id": 1164, + "id": 1116, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33370,16 +32050,16 @@ "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1118, + "id": 1071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1115, + "id": 1068, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11981:11:0", + "scope": 1116, + "src": "10975:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33387,10 +32067,10 @@ "typeString": "address" }, "typeName": { - "id": 1114, + "id": 1067, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11981:7:0", + "src": "10975:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33401,11 +32081,11 @@ }, { "constant": false, - "id": 1117, + "id": 1070, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11994:13:0", + "scope": 1116, + "src": "10988:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33413,10 +32093,10 @@ "typeString": "address" }, "typeName": { - "id": 1116, + "id": 1069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11994:7:0", + "src": "10988:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33426,20 +32106,20 @@ "visibility": "internal" } ], - "src": "11980:28:0" + "src": "10974:28:0" }, "payable": false, "returnParameters": { - "id": 1121, + "id": 1074, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1073, "name": "", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12033:7:0", + "scope": 1116, + "src": "11027:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33447,10 +32127,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1119, + "id": 1072, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12033:7:0", + "src": "11027:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33460,19 +32140,19 @@ "visibility": "internal" } ], - "src": "12032:9:0" + "src": "11026:9:0" }, - "scope": 1194, - "src": "11934:526:0", + "scope": 1146, + "src": "10928:511:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1174, + "id": 1126, "nodeType": "Block", - "src": "12550:65:0", + "src": "11529:65:0", "statements": [ { "expression": { @@ -33480,12 +32160,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1171, + "id": 1123, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "12585:22:0", + "referencedDeclaration": 69, + "src": "11564:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33501,32 +32181,32 @@ ], "expression": { "argumentTypes": null, - "id": 1169, + "id": 1121, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "12567:13:0", + "referencedDeclaration": 67, + "src": "11546:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1170, + "id": 1122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "12567:17:0", + "referencedDeclaration": 1281, + "src": "11546:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1172, + "id": 1124, "isConstant": false, "isLValue": false, "isPure": false, @@ -33534,21 +32214,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12567:41:0", + "src": "11546:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1168, - "id": 1173, + "functionReturnParameters": 1120, + "id": 1125, "nodeType": "Return", - "src": "12560:48:0" + "src": "11539:48:0" } ] }, "documentation": null, - "id": 1175, + "id": 1127, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33556,23 +32236,23 @@ "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1165, + "id": 1117, "nodeType": "ParameterList", "parameters": [], - "src": "12514:2:0" + "src": "11493:2:0" }, "payable": false, "returnParameters": { - "id": 1168, + "id": 1120, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1167, + "id": 1119, "name": "", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "12541:7:0", + "scope": 1127, + "src": "11520:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33580,10 +32260,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1166, + "id": 1118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12541:7:0", + "src": "11520:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33593,19 +32273,19 @@ "visibility": "internal" } ], - "src": "12540:9:0" + "src": "11519:9:0" }, - "scope": 1194, - "src": "12466:149:0", + "scope": 1146, + "src": "11445:149:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1192, + "id": 1144, "nodeType": "Block", - "src": "12737:39:0", + "src": "11716:39:0", "statements": [ { "expression": { @@ -33613,12 +32293,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1179, - "src": "12764:1:0", + "referencedDeclaration": 1131, + "src": "11743:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33626,12 +32306,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1141, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1181, - "src": "12767:1:0", + "referencedDeclaration": 1133, + "src": "11746:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33651,32 +32331,32 @@ ], "expression": { "argumentTypes": null, - "id": 1186, + "id": 1138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "12754:1:0", + "referencedDeclaration": 1129, + "src": "11733:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1187, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12754:9:0", + "referencedDeclaration": 1344, + "src": "11733:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1190, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -33684,21 +32364,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12754:15:0", + "src": "11733:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1185, - "id": 1191, + "functionReturnParameters": 1137, + "id": 1143, "nodeType": "Return", - "src": "12747:22:0" + "src": "11726:22:0" } ] }, "documentation": null, - "id": 1193, + "id": 1145, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33706,16 +32386,16 @@ "name": "delegatePercent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1182, + "id": 1134, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1177, + "id": 1129, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12670:9:0", + "scope": 1145, + "src": "11649:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33723,10 +32403,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1176, + "id": 1128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12670:7:0", + "src": "11649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33737,11 +32417,11 @@ }, { "constant": false, - "id": 1179, + "id": 1131, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12681:9:0", + "scope": 1145, + "src": "11660:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33749,10 +32429,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1178, + "id": 1130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12681:7:0", + "src": "11660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33763,11 +32443,11 @@ }, { "constant": false, - "id": 1181, + "id": 1133, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12692:9:0", + "scope": 1145, + "src": "11671:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33775,10 +32455,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1180, + "id": 1132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12692:7:0", + "src": "11671:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33788,20 +32468,20 @@ "visibility": "internal" } ], - "src": "12669:33:0" + "src": "11648:33:0" }, "payable": false, "returnParameters": { - "id": 1185, + "id": 1137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 1136, "name": "", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12728:7:0", + "scope": 1145, + "src": "11707:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33809,10 +32489,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1183, + "id": 1135, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12728:7:0", + "src": "11707:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33822,17 +32502,17 @@ "visibility": "internal" } ], - "src": "12727:9:0" + "src": "11706:9:0" }, - "scope": 1194, - "src": "12645:131:0", + "scope": 1146, + "src": "11624:131:0", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1394, - "src": "989:11789:0" + "scope": 1346, + "src": "444:11313:0" }, { "baseContracts": [], @@ -33840,20 +32520,20 @@ "contractKind": "contract", "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", "fullyImplemented": false, - "id": 1221, + "id": 1173, "linearizedBaseContracts": [ - 1221 + 1173 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1196, + "id": 1148, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 1221, - "src": "12932:26:0", + "scope": 1173, + "src": "11911:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -33861,10 +32541,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1195, + "id": 1147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12932:7:0", + "src": "11911:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33876,7 +32556,7 @@ { "body": null, "documentation": null, - "id": 1203, + "id": 1155, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -33884,16 +32564,16 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1199, + "id": 1151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1198, + "id": 1150, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "12981:11:0", + "scope": 1155, + "src": "11960:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33901,10 +32581,10 @@ "typeString": "address" }, "typeName": { - "id": 1197, + "id": 1149, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12981:7:0", + "src": "11960:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33914,20 +32594,20 @@ "visibility": "internal" } ], - "src": "12980:13:0" + "src": "11959:13:0" }, "payable": false, "returnParameters": { - "id": 1202, + "id": 1154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1201, + "id": 1153, "name": "", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "13019:7:0", + "scope": 1155, + "src": "11998:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33935,10 +32615,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1200, + "id": 1152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13019:7:0", + "src": "11998:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33948,10 +32628,10 @@ "visibility": "internal" } ], - "src": "13018:9:0" + "src": "11997:9:0" }, - "scope": 1221, - "src": "12962:66:0", + "scope": 1173, + "src": "11941:66:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -33959,7 +32639,7 @@ { "body": null, "documentation": null, - "id": 1212, + "id": 1164, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -33967,16 +32647,16 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1208, + "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1205, + "id": 1157, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13049:10:0", + "scope": 1164, + "src": "12028:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33984,10 +32664,10 @@ "typeString": "address" }, "typeName": { - "id": 1204, + "id": 1156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13049:7:0", + "src": "12028:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33998,11 +32678,11 @@ }, { "constant": false, - "id": 1207, + "id": 1159, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13061:13:0", + "scope": 1164, + "src": "12040:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34010,10 +32690,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1158, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13061:7:0", + "src": "12040:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34023,20 +32703,20 @@ "visibility": "internal" } ], - "src": "13048:27:0" + "src": "12027:27:0" }, "payable": false, "returnParameters": { - "id": 1211, + "id": 1163, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1210, + "id": 1162, "name": "", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13092:4:0", + "scope": 1164, + "src": "12071:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34044,10 +32724,10 @@ "typeString": "bool" }, "typeName": { - "id": 1209, + "id": 1161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13092:4:0", + "src": "12071:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34057,10 +32737,10 @@ "visibility": "internal" } ], - "src": "13091:6:0" + "src": "12070:6:0" }, - "scope": 1221, - "src": "13031:67:0", + "scope": 1173, + "src": "12010:67:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -34068,21 +32748,21 @@ { "anonymous": false, "documentation": null, - "id": 1220, + "id": 1172, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1219, + "id": 1171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1214, + "id": 1166, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13116:20:0", + "scope": 1172, + "src": "12095:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34090,10 +32770,10 @@ "typeString": "address" }, "typeName": { - "id": 1213, + "id": 1165, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13116:7:0", + "src": "12095:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34104,12 +32784,12 @@ }, { "constant": false, - "id": 1216, + "id": 1168, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13138:18:0", + "scope": 1172, + "src": "12117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34117,10 +32797,10 @@ "typeString": "address" }, "typeName": { - "id": 1215, + "id": 1167, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13138:7:0", + "src": "12117:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34131,12 +32811,12 @@ }, { "constant": false, - "id": 1218, + "id": 1170, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13158:13:0", + "scope": 1172, + "src": "12137:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34144,10 +32824,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1217, + "id": 1169, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13158:7:0", + "src": "12137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34157,13 +32837,13 @@ "visibility": "internal" } ], - "src": "13115:57:0" + "src": "12094:57:0" }, - "src": "13101:72:0" + "src": "12080:72:0" } ], - "scope": 1394, - "src": "12908:267:0" + "scope": 1346, + "src": "11887:267:0" }, { "baseContracts": [ @@ -34171,31 +32851,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1222, + "id": 1174, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1221, - "src": "13285:10:0", + "referencedDeclaration": 1173, + "src": "12264:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$1221", + "typeIdentifier": "t_contract$_ERC20Basic_$1173", "typeString": "contract ERC20Basic" } }, - "id": 1223, + "id": 1175, "nodeType": "InheritanceSpecifier", - "src": "13285:10:0" + "src": "12264:10:0" } ], "contractDependencies": [ - 1221 + 1173 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 1261, + "id": 1213, "linearizedBaseContracts": [ - 1261, - 1221 + 1213, + 1173 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -34203,7 +32883,7 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1184, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -34211,16 +32891,16 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1225, + "id": 1177, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13319:13:0", + "scope": 1184, + "src": "12298:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34228,10 +32908,10 @@ "typeString": "address" }, "typeName": { - "id": 1224, + "id": 1176, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13319:7:0", + "src": "12298:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34242,11 +32922,11 @@ }, { "constant": false, - "id": 1227, + "id": 1179, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13334:15:0", + "scope": 1184, + "src": "12313:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34254,10 +32934,10 @@ "typeString": "address" }, "typeName": { - "id": 1226, + "id": 1178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13334:7:0", + "src": "12313:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34267,20 +32947,20 @@ "visibility": "internal" } ], - "src": "13318:32:0" + "src": "12297:32:0" }, "payable": false, "returnParameters": { - "id": 1231, + "id": 1183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1182, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13376:7:0", + "scope": 1184, + "src": "12355:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34288,10 +32968,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1181, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13376:7:0", + "src": "12355:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34301,10 +32981,10 @@ "visibility": "internal" } ], - "src": "13375:9:0" + "src": "12354:9:0" }, - "scope": 1261, - "src": "13300:85:0", + "scope": 1213, + "src": "12279:85:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -34312,7 +32992,7 @@ { "body": null, "documentation": null, - "id": 1243, + "id": 1195, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -34320,16 +33000,16 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1239, + "id": 1191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1186, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13410:12:0", + "scope": 1195, + "src": "12389:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34337,10 +33017,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13410:7:0", + "src": "12389:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34351,11 +33031,11 @@ }, { "constant": false, - "id": 1236, + "id": 1188, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13424:10:0", + "scope": 1195, + "src": "12403:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34363,10 +33043,10 @@ "typeString": "address" }, "typeName": { - "id": 1235, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13424:7:0", + "src": "12403:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34377,11 +33057,11 @@ }, { "constant": false, - "id": 1238, + "id": 1190, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13436:13:0", + "scope": 1195, + "src": "12415:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34389,10 +33069,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1237, + "id": 1189, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13436:7:0", + "src": "12415:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34402,20 +33082,20 @@ "visibility": "internal" } ], - "src": "13409:41:0" + "src": "12388:41:0" }, "payable": false, "returnParameters": { - "id": 1242, + "id": 1194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1193, "name": "", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13467:4:0", + "scope": 1195, + "src": "12446:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34423,10 +33103,10 @@ "typeString": "bool" }, "typeName": { - "id": 1240, + "id": 1192, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13467:4:0", + "src": "12446:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34436,10 +33116,10 @@ "visibility": "internal" } ], - "src": "13466:6:0" + "src": "12445:6:0" }, - "scope": 1261, - "src": "13388:85:0", + "scope": 1213, + "src": "12367:85:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -34447,7 +33127,7 @@ { "body": null, "documentation": null, - "id": 1252, + "id": 1204, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -34455,16 +33135,16 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1248, + "id": 1200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1245, + "id": 1197, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13493:15:0", + "scope": 1204, + "src": "12472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34472,10 +33152,10 @@ "typeString": "address" }, "typeName": { - "id": 1244, + "id": 1196, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13493:7:0", + "src": "12472:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34486,11 +33166,11 @@ }, { "constant": false, - "id": 1247, + "id": 1199, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13510:13:0", + "scope": 1204, + "src": "12489:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34498,10 +33178,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1246, + "id": 1198, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13510:7:0", + "src": "12489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34511,20 +33191,20 @@ "visibility": "internal" } ], - "src": "13492:32:0" + "src": "12471:32:0" }, "payable": false, "returnParameters": { - "id": 1251, + "id": 1203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1202, "name": "", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13541:4:0", + "scope": 1204, + "src": "12520:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34532,10 +33212,10 @@ "typeString": "bool" }, "typeName": { - "id": 1249, + "id": 1201, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13541:4:0", + "src": "12520:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34545,10 +33225,10 @@ "visibility": "internal" } ], - "src": "13540:6:0" + "src": "12519:6:0" }, - "scope": 1261, - "src": "13476:71:0", + "scope": 1213, + "src": "12455:71:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -34556,21 +33236,21 @@ { "anonymous": false, "documentation": null, - "id": 1260, + "id": 1212, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1259, + "id": 1211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1254, + "id": 1206, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13565:21:0", + "scope": 1212, + "src": "12544:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34578,10 +33258,10 @@ "typeString": "address" }, "typeName": { - "id": 1253, + "id": 1205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13565:7:0", + "src": "12544:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34592,12 +33272,12 @@ }, { "constant": false, - "id": 1256, + "id": 1208, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13588:23:0", + "scope": 1212, + "src": "12567:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34605,10 +33285,10 @@ "typeString": "address" }, "typeName": { - "id": 1255, + "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13588:7:0", + "src": "12567:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34619,12 +33299,12 @@ }, { "constant": false, - "id": 1258, + "id": 1210, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13613:13:0", + "scope": 1212, + "src": "12592:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34632,10 +33312,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1257, + "id": 1209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13613:7:0", + "src": "12592:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34645,13 +33325,13 @@ "visibility": "internal" } ], - "src": "13564:63:0" + "src": "12543:63:0" }, - "src": "13550:78:0" + "src": "12529:78:0" } ], - "scope": 1394, - "src": "13267:363:0" + "scope": 1346, + "src": "12246:363:0" }, { "baseContracts": [], @@ -34659,31 +33339,31 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 1393, + "id": 1345, "linearizedBaseContracts": [ - 1393 + 1345 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1290, + "id": 1242, "nodeType": "Block", - "src": "13817:90:0", + "src": "12796:90:0", "statements": [ { "assignments": [ - 1271 + 1223 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1223, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13827:9:0", + "scope": 1243, + "src": "12806:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34691,10 +33371,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 1222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13827:7:0", + "src": "12806:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34704,26 +33384,26 @@ "visibility": "internal" } ], - "id": 1275, + "id": 1227, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1274, + "id": 1226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1272, + "id": 1224, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13839:1:0", + "referencedDeclaration": 1215, + "src": "12818:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34733,25 +33413,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1273, + "id": 1225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13843:1:0", + "referencedDeclaration": 1217, + "src": "12822:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13839:5:0", + "src": "12818:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13827:17:0" + "src": "12806:17:0" }, { "expression": { @@ -34763,7 +33443,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1285, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, @@ -34774,19 +33454,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1279, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1277, + "id": 1229, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13861:1:0", + "referencedDeclaration": 1215, + "src": "12840:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34797,14 +33477,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1278, + "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13866:1:0", + "src": "12845:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -34812,7 +33492,7 @@ }, "value": "0" }, - "src": "13861:6:0", + "src": "12840:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34826,7 +33506,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1284, + "id": 1236, "isConstant": false, "isLValue": false, "isPure": false, @@ -34837,19 +33517,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1282, + "id": 1234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1280, + "id": 1232, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13871:1:0", + "referencedDeclaration": 1223, + "src": "12850:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34859,18 +33539,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1281, + "id": 1233, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13875:1:0", + "referencedDeclaration": 1215, + "src": "12854:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:5:0", + "src": "12850:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34880,24 +33560,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1283, + "id": 1235, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13880:1:0", + "referencedDeclaration": 1217, + "src": "12859:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:10:0", + "src": "12850:10:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13861:20:0", + "src": "12840:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34911,18 +33591,18 @@ "typeString": "bool" } ], - "id": 1276, + "id": 1228, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "13854:6:0", + "referencedDeclaration": 1489, + "src": "12833:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, @@ -34930,39 +33610,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13854:28:0", + "src": "12833:28:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 1239, "nodeType": "ExpressionStatement", - "src": "13854:28:0" + "src": "12833:28:0" }, { "expression": { "argumentTypes": null, - "id": 1288, + "id": 1240, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13899:1:0", + "referencedDeclaration": 1223, + "src": "12878:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1269, - "id": 1289, + "functionReturnParameters": 1221, + "id": 1241, "nodeType": "Return", - "src": "13892:8:0" + "src": "12871:8:0" } ] }, "documentation": null, - "id": 1291, + "id": 1243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -34970,16 +33650,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 1266, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1263, + "id": 1215, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13759:9:0", + "scope": 1243, + "src": "12738:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34987,10 +33667,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1214, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13759:7:0", + "src": "12738:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35001,11 +33681,11 @@ }, { "constant": false, - "id": 1265, + "id": 1217, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13770:9:0", + "scope": 1243, + "src": "12749:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35013,10 +33693,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1264, + "id": 1216, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13770:7:0", + "src": "12749:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35026,20 +33706,20 @@ "visibility": "internal" } ], - "src": "13758:22:0" + "src": "12737:22:0" }, "payable": false, "returnParameters": { - "id": 1269, + "id": 1221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1268, + "id": 1220, "name": "", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13808:7:0", + "scope": 1243, + "src": "12787:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35047,10 +33727,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1267, + "id": 1219, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13808:7:0", + "src": "12787:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35060,32 +33740,32 @@ "visibility": "internal" } ], - "src": "13807:9:0" + "src": "12786:9:0" }, - "scope": 1393, - "src": "13746:161:0", + "scope": 1345, + "src": "12725:161:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1308, + "id": 1260, "nodeType": "Block", - "src": "13984:216:0", + "src": "12963:216:0", "statements": [ { "assignments": [ - 1301 + 1253 ], "declarations": [ { "constant": false, - "id": 1301, + "id": 1253, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "14072:9:0", + "scope": 1261, + "src": "13051:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35093,10 +33773,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1300, + "id": 1252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14072:7:0", + "src": "13051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35106,26 +33786,26 @@ "visibility": "internal" } ], - "id": 1305, + "id": 1257, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1304, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1302, + "id": 1254, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1293, - "src": "14084:1:0", + "referencedDeclaration": 1245, + "src": "13063:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35135,49 +33815,49 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1303, + "id": 1255, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1295, - "src": "14088:1:0", + "referencedDeclaration": 1247, + "src": "13067:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14084:5:0", + "src": "13063:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14072:17:0" + "src": "13051:17:0" }, { "expression": { "argumentTypes": null, - "id": 1306, + "id": 1258, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "14192:1:0", + "referencedDeclaration": 1253, + "src": "13171:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1299, - "id": 1307, + "functionReturnParameters": 1251, + "id": 1259, "nodeType": "Return", - "src": "14185:8:0" + "src": "13164:8:0" } ] }, "documentation": null, - "id": 1309, + "id": 1261, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35185,16 +33865,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 1296, + "id": 1248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1293, + "id": 1245, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13926:9:0", + "scope": 1261, + "src": "12905:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35202,10 +33882,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1292, + "id": 1244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13926:7:0", + "src": "12905:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35216,11 +33896,11 @@ }, { "constant": false, - "id": 1295, + "id": 1247, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13937:9:0", + "scope": 1261, + "src": "12916:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35228,10 +33908,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1294, + "id": 1246, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13937:7:0", + "src": "12916:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35241,20 +33921,20 @@ "visibility": "internal" } ], - "src": "13925:22:0" + "src": "12904:22:0" }, "payable": false, "returnParameters": { - "id": 1299, + "id": 1251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1250, "name": "", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13975:7:0", + "scope": 1261, + "src": "12954:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35262,10 +33942,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1297, + "id": 1249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13975:7:0", + "src": "12954:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35275,19 +33955,19 @@ "visibility": "internal" } ], - "src": "13974:9:0" + "src": "12953:9:0" }, - "scope": 1393, - "src": "13913:287:0", + "scope": 1345, + "src": "12892:287:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1328, + "id": 1280, "nodeType": "Block", - "src": "14277:53:0", + "src": "13256:53:0", "statements": [ { "expression": { @@ -35299,19 +33979,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1321, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1319, + "id": 1271, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14294:1:0", + "referencedDeclaration": 1265, + "src": "13273:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35321,18 +34001,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 1320, + "id": 1272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14299:1:0", + "referencedDeclaration": 1263, + "src": "13278:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14294:6:0", + "src": "13273:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35346,18 +34026,18 @@ "typeString": "bool" } ], - "id": 1318, + "id": 1270, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14287:6:0", + "referencedDeclaration": 1489, + "src": "13266:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1322, + "id": 1274, "isConstant": false, "isLValue": false, "isPure": false, @@ -35365,15 +34045,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14287:14:0", + "src": "13266:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1323, + "id": 1275, "nodeType": "ExpressionStatement", - "src": "14287:14:0" + "src": "13266:14:0" }, { "expression": { @@ -35382,19 +34062,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1326, + "id": 1278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1324, + "id": 1276, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14318:1:0", + "referencedDeclaration": 1263, + "src": "13297:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35404,32 +34084,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1325, + "id": 1277, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14322:1:0", + "referencedDeclaration": 1265, + "src": "13301:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14318:5:0", + "src": "13297:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1317, - "id": 1327, + "functionReturnParameters": 1269, + "id": 1279, "nodeType": "Return", - "src": "14311:12:0" + "src": "13290:12:0" } ] }, "documentation": null, - "id": 1329, + "id": 1281, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35437,16 +34117,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 1314, + "id": 1266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1311, + "id": 1263, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14219:9:0", + "scope": 1281, + "src": "13198:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35454,10 +34134,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1310, + "id": 1262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14219:7:0", + "src": "13198:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35468,11 +34148,11 @@ }, { "constant": false, - "id": 1313, + "id": 1265, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14230:9:0", + "scope": 1281, + "src": "13209:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35480,10 +34160,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1312, + "id": 1264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14230:7:0", + "src": "13209:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35493,20 +34173,20 @@ "visibility": "internal" } ], - "src": "14218:22:0" + "src": "13197:22:0" }, "payable": false, "returnParameters": { - "id": 1317, + "id": 1269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 1268, "name": "", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14268:7:0", + "scope": 1281, + "src": "13247:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35514,10 +34194,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1315, + "id": 1267, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14268:7:0", + "src": "13247:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35527,32 +34207,32 @@ "visibility": "internal" } ], - "src": "14267:9:0" + "src": "13246:9:0" }, - "scope": 1393, - "src": "14206:124:0", + "scope": 1345, + "src": "13185:124:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1352, + "id": 1304, "nodeType": "Block", - "src": "14407:76:0", + "src": "13386:76:0", "statements": [ { "assignments": [ - 1339 + 1291 ], "declarations": [ { "constant": false, - "id": 1339, + "id": 1291, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14417:9:0", + "scope": 1305, + "src": "13396:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35560,10 +34240,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1338, + "id": 1290, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14417:7:0", + "src": "13396:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35573,26 +34253,26 @@ "visibility": "internal" } ], - "id": 1343, + "id": 1295, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1342, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1340, + "id": 1292, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14429:1:0", + "referencedDeclaration": 1283, + "src": "13408:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35602,25 +34282,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1341, + "id": 1293, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "14433:1:0", + "referencedDeclaration": 1285, + "src": "13412:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14429:5:0", + "src": "13408:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14417:17:0" + "src": "13396:17:0" }, { "expression": { @@ -35632,19 +34312,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1347, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1345, + "id": 1297, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14451:1:0", + "referencedDeclaration": 1291, + "src": "13430:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35654,18 +34334,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1346, + "id": 1298, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14456:1:0", + "referencedDeclaration": 1283, + "src": "13435:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14451:6:0", + "src": "13430:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35679,18 +34359,18 @@ "typeString": "bool" } ], - "id": 1344, + "id": 1296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14444:6:0", + "referencedDeclaration": 1489, + "src": "13423:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1348, + "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, @@ -35698,39 +34378,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14444:14:0", + "src": "13423:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1349, + "id": 1301, "nodeType": "ExpressionStatement", - "src": "14444:14:0" + "src": "13423:14:0" }, { "expression": { "argumentTypes": null, - "id": 1350, + "id": 1302, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14475:1:0", + "referencedDeclaration": 1291, + "src": "13454:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1337, - "id": 1351, + "functionReturnParameters": 1289, + "id": 1303, "nodeType": "Return", - "src": "14468:8:0" + "src": "13447:8:0" } ] }, "documentation": null, - "id": 1353, + "id": 1305, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35738,16 +34418,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 1334, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1331, + "id": 1283, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14349:9:0", + "scope": 1305, + "src": "13328:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35755,10 +34435,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1330, + "id": 1282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14349:7:0", + "src": "13328:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35769,11 +34449,11 @@ }, { "constant": false, - "id": 1333, + "id": 1285, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14360:9:0", + "scope": 1305, + "src": "13339:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35781,10 +34461,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14360:7:0", + "src": "13339:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35794,20 +34474,20 @@ "visibility": "internal" } ], - "src": "14348:22:0" + "src": "13327:22:0" }, "payable": false, "returnParameters": { - "id": 1337, + "id": 1289, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1336, + "id": 1288, "name": "", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14398:7:0", + "scope": 1305, + "src": "13377:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35815,10 +34495,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1335, + "id": 1287, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14398:7:0", + "src": "13377:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35828,32 +34508,32 @@ "visibility": "internal" } ], - "src": "14397:9:0" + "src": "13376:9:0" }, - "scope": 1393, - "src": "14336:147:0", + "scope": 1345, + "src": "13315:147:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1391, + "id": 1343, "nodeType": "Block", - "src": "14768:257:0", + "src": "13747:257:0", "statements": [ { "assignments": [ - 1365 + 1317 ], "declarations": [ { "constant": false, - "id": 1365, + "id": 1317, "name": "_numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14826:18:0", + "scope": 1344, + "src": "13805:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35861,10 +34541,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1364, + "id": 1316, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14826:7:0", + "src": "13805:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35874,18 +34554,18 @@ "visibility": "internal" } ], - "id": 1375, + "id": 1327, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1367, + "id": 1319, "name": "numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1355, - "src": "14851:9:0", + "referencedDeclaration": 1307, + "src": "13830:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35897,7 +34577,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1373, + "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, @@ -35905,14 +34585,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1368, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14862:2:0", + "src": "13841:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -35931,19 +34611,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1371, + "id": 1323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1369, + "id": 1321, "name": "precision", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "14869:9:0", + "referencedDeclaration": 1311, + "src": "13848:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35954,14 +34634,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1370, + "id": 1322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14879:1:0", + "src": "13858:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -35969,27 +34649,27 @@ }, "value": "1" }, - "src": "14869:11:0", + "src": "13848:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1372, + "id": 1324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14868:13:0", + "src": "13847:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14862:19:0", + "src": "13841:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36007,18 +34687,18 @@ "typeString": "uint256" } ], - "id": 1366, + "id": 1318, "name": "mul", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "14847:3:0", + "referencedDeclaration": 1243, + "src": "13826:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1374, + "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, @@ -36026,27 +34706,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14847:35:0", + "src": "13826:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14826:56:0" + "src": "13805:56:0" }, { "assignments": [ - 1377 + 1329 ], "declarations": [ { "constant": false, - "id": 1377, + "id": 1329, "name": "_quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14931:17:0", + "scope": 1344, + "src": "13910:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36054,10 +34734,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1376, + "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14931:7:0", + "src": "13910:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36067,14 +34747,14 @@ "visibility": "internal" } ], - "id": 1387, + "id": 1339, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1386, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, @@ -36088,7 +34768,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1383, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": false, @@ -36098,12 +34778,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1379, + "id": 1331, "name": "_numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "14956:10:0", + "referencedDeclaration": 1317, + "src": "13935:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36111,12 +34791,12 @@ }, { "argumentTypes": null, - "id": 1380, + "id": 1332, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1357, - "src": "14968:11:0", + "referencedDeclaration": 1309, + "src": "13947:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36134,18 +34814,18 @@ "typeString": "uint256" } ], - "id": 1378, + "id": 1330, "name": "div", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "14952:3:0", + "referencedDeclaration": 1261, + "src": "13931:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1381, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -36153,7 +34833,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14952:28:0", + "src": "13931:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36164,14 +34844,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "35", - "id": 1382, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14983:1:0", + "src": "13962:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_5_by_1", @@ -36179,21 +34859,21 @@ }, "value": "5" }, - "src": "14952:32:0", + "src": "13931:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1384, + "id": 1336, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14951:34:0", + "src": "13930:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36204,14 +34884,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1385, + "id": 1337, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14988:2:0", + "src": "13967:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -36219,14 +34899,14 @@ }, "value": "10" }, - "src": "14951:39:0", + "src": "13930:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14931:59:0" + "src": "13910:59:0" }, { "expression": { @@ -36234,40 +34914,40 @@ "components": [ { "argumentTypes": null, - "id": 1388, + "id": 1340, "name": "_quotient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "15008:9:0", + "referencedDeclaration": 1329, + "src": "13987:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1389, + "id": 1341, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "15007:11:0", + "src": "13986:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1363, - "id": 1390, + "functionReturnParameters": 1315, + "id": 1342, "nodeType": "Return", - "src": "15000:18:0" + "src": "13979:18:0" } ] }, "documentation": null, - "id": 1392, + "id": 1344, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -36275,16 +34955,16 @@ "name": "percent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1360, + "id": 1312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1355, + "id": 1307, "name": "numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14665:17:0", + "scope": 1344, + "src": "13644:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36292,10 +34972,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1354, + "id": 1306, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14665:7:0", + "src": "13644:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36306,11 +34986,11 @@ }, { "constant": false, - "id": 1357, + "id": 1309, "name": "denominator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14684:19:0", + "scope": 1344, + "src": "13663:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36318,10 +34998,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1356, + "id": 1308, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14684:7:0", + "src": "13663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36332,11 +35012,11 @@ }, { "constant": false, - "id": 1359, + "id": 1311, "name": "precision", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14705:17:0", + "scope": 1344, + "src": "13684:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36344,10 +35024,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1358, + "id": 1310, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14705:7:0", + "src": "13684:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36357,20 +35037,20 @@ "visibility": "internal" } ], - "src": "14664:59:0" + "src": "13643:59:0" }, "payable": false, "returnParameters": { - "id": 1363, + "id": 1315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1362, + "id": 1314, "name": "quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14750:16:0", + "scope": 1344, + "src": "13729:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36378,10 +35058,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1361, + "id": 1313, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14750:7:0", + "src": "13729:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36391,20 +35071,20 @@ "visibility": "internal" } ], - "src": "14749:18:0" + "src": "13728:18:0" }, - "scope": 1393, - "src": "14648:377:0", + "scope": 1345, + "src": "13627:377:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1394, - "src": "13723:1304:0" + "scope": 1346, + "src": "12702:1304:0" } ], - "src": "0:15029:0" + "src": "0:14008:0" }, "compiler": { "name": "solc", @@ -36412,7 +35092,7 @@ }, "networks": {}, "schemaVersion": "3.3.2", - "updatedAt": "2021-05-01T11:15:37.955Z", + "updatedAt": "2021-05-02T12:39:45.317Z", "devdoc": { "methods": {}, "title": "ERC20 interface" diff --git a/build/contracts/ERC20Basic.json b/build/contracts/ERC20Basic.json index 611ed449..30f9cb39 100644 --- a/build/contracts/ERC20Basic.json +++ b/build/contracts/ERC20Basic.json @@ -85,28 +85,25 @@ "deployedBytecode": "0x", "sourceMap": "", "deployedSourceMap": "", - "source": "pragma solidity ^0.4.15;\n\n/**\n * @title Doneth (Doneth)\n * @dev Doneth is a contract that allows shared access to funds\n * in the form of Ether and ERC20 tokens. It is especially relevant\n * to donation based projects. The admins of the contract determine \n * who is a member, and each member gets a number of shares. The \n * number of shares each member has determines how much Ether/ERC20 \n * the member can withdraw from the contract.\n */\n\n/*\n * Ownable\n *\n * Base contract with an owner.\n * Provides onlyOwner modifier, which prevents function from running\n * if it is called by anyone other than the owner.\n */\n\ncontract Ownable {\n address public owner;\n\n function Ownable() public {\n owner = tx.origin;\n }\n\n modifier onlyOwner() {\n require(msg.sender == owner || tx.origin == owner);\n _;\n }\n\n function transferOwnership(address newOwner) onlyOwner public {\n if (newOwner != address(0)) {\n owner = newOwner;\n }\n }\n}\n\ncontract Doneth is Ownable {\n using SafeMath for uint256; \n\n bool public initialized;\n\n // Name of the contract\n string public name;\n\n // Sum of all shares allocated to members\n uint256 public totalShares;\n\n // Sum of all withdrawals done by members\n uint256 public totalWithdrawn;\n\n // Block number of when the contract was created\n uint256 public genesisBlockNumber;\n\n // Number of decimal places for floating point division\n uint256 constant public PRECISION = 18;\n\n // Variables for shared expense allocation\n uint256 public sharedExpense;\n uint256 public sharedExpenseWithdrawn;\n\n // Used to keep track of members\n mapping(address => Member) public members;\n address[] public memberKeys;\n struct Member {\n bool exists;\n bool admin;\n uint256 shares;\n uint256 withdrawn;\n string memberName;\n mapping(address => uint256) tokensWithdrawn;\n }\n\n // Used to keep track of ERC20 tokens used and how much withdrawn\n mapping(address => Token) public tokens;\n address[] public tokenKeys;\n struct Token {\n bool exists;\n uint256 totalWithdrawn;\n }\n\n // constructor() public {\n // genesisBlockNumber = block.number;\n // addMember(tx.origin, 1, true, \"\");\n // }\n\n\n function init(string _contractName, string _founderName) public {\n require(!initialized, \"ALREADY INITIALIZED\");\n initialized = true;\n owner = tx.origin;\n genesisBlockNumber = block.number;\n if (bytes(_contractName).length > 21) revert();\n if (bytes(_founderName).length > 21) revert();\n name = _contractName;\n // addMember(founder, 1, true, _founderName);\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = true;\n newMember.memberName = _founderName;\n\n members[tx.origin] = newMember;\n memberKeys.push(tx.origin);\n // addShare(tx.origin, shares);\n totalShares = totalShares.add(1);\n members[tx.origin].shares = members[tx.origin].shares.add(1);\n AddShare(tx.origin, 1, members[tx.origin].shares);\n // AddShare(tx.origin, 1, members[tx.origin].shares);\n // AddShare(msg.sender, 1, members[tx.origin].shares);\n }\n\n event Deposit(address from, uint value);\n event Withdraw(address from, uint value, uint256 newTotalWithdrawn);\n event TokenWithdraw(address from, uint value, address token, uint amount);\n event AddShare(address who, uint256 addedShares, uint256 newTotalShares);\n event RemoveShare(address who, uint256 removedShares, uint256 newTotalShares);\n event ChangePrivilege(address who, bool oldValue, bool newValue);\n event ChangeContractName(string oldValue, string newValue);\n event ChangeMemberName(address who, string oldValue, string newValue);\n event ChangeSharedExpense(uint256 contractBalance, uint256 oldValue, uint256 newValue);\n event WithdrawSharedExpense(address from, address to, uint value, uint256 newSharedExpenseWithdrawn);\n\n // Fallback function accepts Ether from donators\n function () public payable {\n Deposit(msg.sender, msg.value);\n }\n\n modifier onlyAdmin() { \n if (msg.sender != owner && !members[msg.sender].admin) revert(); \n _;\n }\n\n modifier onlyExisting(address who) { \n if (!members[who].exists) revert(); \n _;\n }\n\n // Series of getter functions for contract data\n function getMemberCount() public constant returns(uint) {\n return memberKeys.length;\n }\n \n function getMemberAtKey(uint key) public constant returns(address) {\n return memberKeys[key];\n }\n \n function getBalance() public constant returns(uint256 balance) {\n return this.balance;\n }\n \n function getContractInfo() public constant returns(string name, address owner, uint256 genesisBlockNumber, uint256 totalShares, uint256 totalWithdrawn) {\n return (string(name), owner, genesisBlockNumber, totalShares, totalWithdrawn);\n }\n \n function returnMember(address _address) public constant onlyExisting(_address) returns(bool admin, uint256 shares, uint256 withdrawn, string memberName) {\n Member memory m = members[_address];\n return (m.admin, m.shares, m.withdrawn, m.memberName);\n }\n\n function checkERC20Balance(address token) public constant returns(uint256) {\n return ERC20(token).balanceOf(address(this));\n // if (!tokens[token].exists && balance > 0) {\n // tokens[token].exists = true;\n // }\n // return balance;\n }\n\n // Function to add members to the contract \n function addMember(address who, uint256 shares, bool admin, string memberName) public onlyAdmin() {\n // Don't allow the same member to be added twice\n if (members[who].exists) revert();\n if (bytes(memberName).length > 21) revert();\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = admin;\n newMember.memberName = memberName;\n\n members[who] = newMember;\n memberKeys.push(who);\n addShare(who, shares);\n }\n\n function updateMember(address who, uint256 shares, bool isAdmin, string name) public onlyAdmin() {\n if (sha3(members[who].memberName) != sha3(name)) changeMemberName(who, name);\n if (members[who].admin != isAdmin) changeAdminPrivilege(who, isAdmin);\n if (members[who].shares != shares) allocateShares(who, shares);\n }\n\n // Only owner, admin or member can change member's name\n function changeMemberName(address who, string newName) public onlyExisting(who) {\n if (msg.sender != who && msg.sender != owner && !members[msg.sender].admin) revert();\n if (bytes(newName).length > 21) revert();\n ChangeMemberName(who, members[who].memberName, newName);\n members[who].memberName = newName;\n }\n\n function changeAdminPrivilege(address who, bool newValue) public onlyAdmin() {\n ChangePrivilege(who, members[who].admin, newValue);\n members[who].admin = newValue; \n }\n\n // Only admins and owners can change the contract name\n function changeContractName(string newName) public onlyAdmin() {\n if (bytes(newName).length > 21) revert();\n ChangeContractName(name, newName);\n name = newName;\n }\n\n // Shared expense allocation allows admins to withdraw an amount to be used for shared\n // expenses. Shared expense allocation subtracts from the total balance of the contract. \n // Only owner can change this amount.\n function changeSharedExpenseAllocation(uint256 newAllocation) public onlyOwner() {\n if (newAllocation < sharedExpenseWithdrawn) revert();\n if (newAllocation.sub(sharedExpenseWithdrawn) > this.balance) revert();\n\n ChangeSharedExpense(this.balance, sharedExpense, newAllocation);\n sharedExpense = newAllocation;\n }\n\n // Set share amount explicitly by calculating difference then adding or removing accordingly\n function allocateShares(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n uint256 currentShares = members[who].shares;\n if (amount == currentShares) revert();\n if (amount > currentShares) {\n addShare(who, amount.sub(currentShares));\n } else {\n removeShare(who, currentShares.sub(amount));\n }\n }\n\n // Increment the number of shares for a member\n function addShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.add(amount);\n members[who].shares = members[who].shares.add(amount);\n AddShare(who, amount, members[who].shares);\n }\n\n // Decrement the number of shares for a member\n function removeShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.sub(amount);\n members[who].shares = members[who].shares.sub(amount);\n RemoveShare(who, amount, members[who].shares);\n }\n\n // Function for a member to withdraw Ether from the contract proportional\n // to the amount of shares they have. Calculates the totalWithdrawableAmount\n // in Ether based on the member's share and the Ether balance of the contract,\n // then subtracts the amount of Ether that the member has already previously\n // withdrawn.\n function withdraw(uint256 amount) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableAmount(msg.sender);\n if (amount > newTotal.sub(members[msg.sender].withdrawn)) revert();\n \n members[msg.sender].withdrawn = members[msg.sender].withdrawn.add(amount);\n totalWithdrawn = totalWithdrawn.add(amount);\n msg.sender.transfer(amount);\n Withdraw(msg.sender, amount, totalWithdrawn);\n }\n\n // Withdrawal function for ERC20 tokens\n function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token);\n if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert();\n\n members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount);\n tokens[token].totalWithdrawn = tokens[token].totalWithdrawn.add(amount);\n ERC20(token).transfer(msg.sender, amount);\n TokenWithdraw(msg.sender, amount, token, tokens[token].totalWithdrawn);\n }\n\n // Withdraw from shared expense allocation. Total withdrawable is calculated as \n // sharedExpense minus sharedExpenseWithdrawn. Only Admin can withdraw from shared expense.\n function withdrawSharedExpense(uint256 amount, address to) public onlyAdmin() {\n if (amount > calculateTotalExpenseWithdrawableAmount()) revert();\n \n sharedExpenseWithdrawn = sharedExpenseWithdrawn.add(amount);\n to.transfer(amount);\n WithdrawSharedExpense(msg.sender, to, amount, sharedExpenseWithdrawn);\n }\n\n // Converts from shares to Eth.\n // Ex: 2 shares, 4 total shares, 40 Eth balance\n // 40 Eth / 4 total shares = 10 eth per share * 2 shares = 20 Eth to cash out\n function calculateTotalWithdrawableAmount(address who) public constant onlyExisting(who) returns (uint256) {\n // Total balance to calculate share from = \n // contract balance + totalWithdrawn - sharedExpense + sharedExpenseWithdrawn\n uint256 balanceSum = this.balance.add(totalWithdrawn);\n balanceSum = balanceSum.sub(sharedExpense);\n balanceSum = balanceSum.add(sharedExpenseWithdrawn);\n \n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 ethPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 ethPPN = ethPerSharePPN.mul(members[who].shares);\n uint256 ethVal = ethPPN.div(10**PRECISION); \n return ethVal;\n }\n\n\n function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) {\n uint256 balanceSum = checkERC20Balance(token).add(tokens[token].totalWithdrawn);\n\n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 tokPPN = tokPerSharePPN.mul(members[who].shares);\n uint256 tokVal = tokPPN.div(10**PRECISION); \n return tokVal;\n }\n\n function calculateTotalExpenseWithdrawableAmount() public constant returns(uint256) {\n return sharedExpense.sub(sharedExpenseWithdrawn);\n }\n\n // Used for testing\n function delegatePercent(uint256 a, uint256 b, uint256 c) public constant returns (uint256) {\n return a.percent(b, c);\n }\n}\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n\n // Using from SO: https://stackoverflow.com/questions/42738640/division-in-ethereum-solidity/42739843#42739843\n // Adapted to use SafeMath and uint256.\n function percent(uint256 numerator, uint256 denominator, uint256 precision) internal constant returns(uint256 quotient) {\n // caution, check safe-to-multiply here\n uint256 _numerator = mul(numerator, 10 ** (precision+1));\n // with rounding of last digit\n uint256 _quotient = (div(_numerator, denominator) + 5) / 10;\n return (_quotient);\n }\n}\n\n", + "source": "pragma solidity ^0.4.15;\n\n/**\n * @title Doneth (Doneth)\n * @dev Doneth is a contract that allows shared access to funds\n * in the form of Ether and ERC20 tokens. It is especially relevant\n * to donation based projects. The admins of the contract determine \n * who is a member, and each member gets a number of shares. The \n * number of shares each member has determines how much Ether/ERC20 \n * the member can withdraw from the contract.\n */\n\n\ncontract Doneth {\n\n address public implementation;\n // constructor(address _implementation) public {}\n\n address public owner;\n\n function Ownable() public {\n owner = tx.origin;\n }\n\n modifier onlyOwner() {\n require(msg.sender == owner || tx.origin == owner);\n _;\n }\n\n function transferOwnership(address newOwner) onlyOwner public {\n if (newOwner != address(0)) {\n owner = newOwner;\n }\n }\n\n using SafeMath for uint256; \n\n bool public initialized;\n\n // Name of the contract\n string public name;\n\n // Sum of all shares allocated to members\n uint256 public totalShares;\n\n // Sum of all withdrawals done by members\n uint256 public totalWithdrawn;\n\n // Block number of when the contract was created\n uint256 public genesisBlockNumber;\n\n // Number of decimal places for floating point division\n uint256 constant public PRECISION = 18;\n\n // Variables for shared expense allocation\n uint256 public sharedExpense;\n uint256 public sharedExpenseWithdrawn;\n\n // Used to keep track of members\n mapping(address => Member) public members;\n address[] public memberKeys;\n struct Member {\n bool exists;\n bool admin;\n uint256 shares;\n uint256 withdrawn;\n string memberName;\n mapping(address => uint256) tokensWithdrawn;\n }\n\n // Used to keep track of ERC20 tokens used and how much withdrawn\n mapping(address => uint256) public tokens;\n\n function init() public {\n require(!initialized);\n initialized = true;\n\n owner = tx.origin;\n genesisBlockNumber = block.number;\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = true;\n members[tx.origin] = newMember;\n memberKeys.push(tx.origin);\n\n totalShares = totalShares.add(1);\n members[tx.origin].shares = members[tx.origin].shares.add(1);\n AddShare(tx.origin, 1, members[tx.origin].shares);\n }\n\n event Deposit(address from, uint value);\n event Withdraw(address from, uint value, uint256 newTotalWithdrawn);\n event TokenWithdraw(address from, uint value, address token, uint amount);\n event AddShare(address who, uint256 addedShares, uint256 newTotalShares);\n event RemoveShare(address who, uint256 removedShares, uint256 newTotalShares);\n event ChangePrivilege(address who, bool oldValue, bool newValue);\n event ChangeContractName(string oldValue, string newValue);\n event ChangeMemberName(address who, string oldValue, string newValue);\n event ChangeSharedExpense(uint256 contractBalance, uint256 oldValue, uint256 newValue);\n event WithdrawSharedExpense(address from, address to, uint value, uint256 newSharedExpenseWithdrawn);\n\n // Fallback function accepts Ether from donators\n function () public payable {\n Deposit(msg.sender, msg.value);\n }\n\n modifier onlyAdmin() { \n if (msg.sender != owner && !members[msg.sender].admin) revert(); \n _;\n }\n\n modifier onlyExisting(address who) { \n if (!members[who].exists) revert(); \n _;\n }\n\n // Series of getter functions for contract data\n function getMemberCount() public constant returns(uint) {\n return memberKeys.length;\n }\n \n function getMemberAtKey(uint key) public constant returns(address) {\n return memberKeys[key];\n }\n \n function getBalance() public constant returns(uint256 balance) {\n return this.balance;\n }\n \n function getContractInfo() public constant returns(string name, address owner, uint256 genesisBlockNumber, uint256 totalShares, uint256 totalWithdrawn) {\n return (string(name), owner, genesisBlockNumber, totalShares, totalWithdrawn);\n }\n \n function returnMember(address _address) public constant onlyExisting(_address) returns(bool admin, uint256 shares, uint256 withdrawn, string memberName) {\n Member memory m = members[_address];\n return (m.admin, m.shares, m.withdrawn, m.memberName);\n }\n\n function checkERC20Balance(address token) public constant returns(uint256) {\n return ERC20(token).balanceOf(address(this));\n }\n\n // Function to add members to the contract \n function addMember(address who, uint256 shares, bool admin, string memberName) public onlyAdmin() {\n // Don't allow the same member to be added twice\n if (members[who].exists) revert();\n if (bytes(memberName).length > 21) revert();\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = admin;\n newMember.memberName = memberName;\n\n members[who] = newMember;\n memberKeys.push(who);\n addShare(who, shares);\n }\n\n function updateMember(address who, uint256 shares, bool isAdmin, string name) public onlyAdmin() {\n if (sha3(members[who].memberName) != sha3(name)) changeMemberName(who, name);\n if (members[who].admin != isAdmin) changeAdminPrivilege(who, isAdmin);\n if (members[who].shares != shares) allocateShares(who, shares);\n }\n\n // Only owner, admin or member can change member's name\n function changeMemberName(address who, string newName) public onlyExisting(who) {\n if (msg.sender != who && msg.sender != owner && !members[msg.sender].admin) revert();\n if (bytes(newName).length > 21) revert();\n ChangeMemberName(who, members[who].memberName, newName);\n members[who].memberName = newName;\n }\n\n function changeAdminPrivilege(address who, bool newValue) public onlyAdmin() {\n ChangePrivilege(who, members[who].admin, newValue);\n members[who].admin = newValue; \n }\n\n // Only admins and owners can change the contract name\n function changeContractName(string newName) public onlyAdmin() {\n if (bytes(newName).length > 21) revert();\n ChangeContractName(name, newName);\n name = newName;\n }\n\n // Shared expense allocation allows admins to withdraw an amount to be used for shared\n // expenses. Shared expense allocation subtracts from the total balance of the contract. \n // Only owner can change this amount.\n function changeSharedExpenseAllocation(uint256 newAllocation) public onlyOwner() {\n if (newAllocation < sharedExpenseWithdrawn) revert();\n if (newAllocation.sub(sharedExpenseWithdrawn) > this.balance) revert();\n\n ChangeSharedExpense(this.balance, sharedExpense, newAllocation);\n sharedExpense = newAllocation;\n }\n\n // Set share amount explicitly by calculating difference then adding or removing accordingly\n function allocateShares(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n uint256 currentShares = members[who].shares;\n if (amount == currentShares) revert();\n if (amount > currentShares) {\n addShare(who, amount.sub(currentShares));\n } else {\n removeShare(who, currentShares.sub(amount));\n }\n }\n\n // Increment the number of shares for a member\n function addShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.add(amount);\n members[who].shares = members[who].shares.add(amount);\n AddShare(who, amount, members[who].shares);\n }\n\n // Decrement the number of shares for a member\n function removeShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.sub(amount);\n members[who].shares = members[who].shares.sub(amount);\n RemoveShare(who, amount, members[who].shares);\n }\n\n // Function for a member to withdraw Ether from the contract proportional\n // to the amount of shares they have. Calculates the totalWithdrawableAmount\n // in Ether based on the member's share and the Ether balance of the contract,\n // then subtracts the amount of Ether that the member has already previously\n // withdrawn.\n function withdraw(uint256 amount) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableAmount(msg.sender);\n if (amount > newTotal.sub(members[msg.sender].withdrawn)) revert();\n \n members[msg.sender].withdrawn = members[msg.sender].withdrawn.add(amount);\n totalWithdrawn = totalWithdrawn.add(amount);\n msg.sender.transfer(amount);\n Withdraw(msg.sender, amount, totalWithdrawn);\n }\n\n // Withdrawal function for ERC20 tokensx\n function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token);\n if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert();\n\n members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount);\n tokens[token] = tokens[token].add(amount);\n ERC20(token).transfer(msg.sender, amount);\n TokenWithdraw(msg.sender, amount, token, tokens[token]);\n }\n\n // Withdraw from shared expense allocation. Total withdrawable is calculated as \n // sharedExpense minus sharedExpenseWithdrawn. Only Admin can withdraw from shared expense.\n function withdrawSharedExpense(uint256 amount, address to) public onlyAdmin() {\n if (amount > calculateTotalExpenseWithdrawableAmount()) revert();\n \n sharedExpenseWithdrawn = sharedExpenseWithdrawn.add(amount);\n to.transfer(amount);\n WithdrawSharedExpense(msg.sender, to, amount, sharedExpenseWithdrawn);\n }\n\n // Converts from shares to Eth.\n // Ex: 2 shares, 4 total shares, 40 Eth balance\n // 40 Eth / 4 total shares = 10 eth per share * 2 shares = 20 Eth to cash out\n function calculateTotalWithdrawableAmount(address who) public constant onlyExisting(who) returns (uint256) {\n // Total balance to calculate share from = \n // contract balance + totalWithdrawn - sharedExpense + sharedExpenseWithdrawn\n uint256 balanceSum = this.balance.add(totalWithdrawn);\n balanceSum = balanceSum.sub(sharedExpense);\n balanceSum = balanceSum.add(sharedExpenseWithdrawn);\n \n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 ethPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 ethPPN = ethPerSharePPN.mul(members[who].shares);\n uint256 ethVal = ethPPN.div(10**PRECISION); \n return ethVal;\n }\n\n\n function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) {\n uint256 balanceSum = checkERC20Balance(token).add(tokens[token]);\n\n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 tokPPN = tokPerSharePPN.mul(members[who].shares);\n uint256 tokVal = tokPPN.div(10**PRECISION); \n return tokVal;\n }\n\n function calculateTotalExpenseWithdrawableAmount() public constant returns(uint256) {\n return sharedExpense.sub(sharedExpenseWithdrawn);\n }\n\n // Used for testing\n function delegatePercent(uint256 a, uint256 b, uint256 c) public constant returns (uint256) {\n return a.percent(b, c);\n }\n}\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n\n // Using from SO: https://stackoverflow.com/questions/42738640/division-in-ethereum-solidity/42739843#42739843\n // Adapted to use SafeMath and uint256.\n function percent(uint256 numerator, uint256 denominator, uint256 precision) internal constant returns(uint256 quotient) {\n // caution, check safe-to-multiply here\n uint256 _numerator = mul(numerator, 10 ** (precision+1));\n // with rounding of last digit\n uint256 _quotient = (div(_numerator, denominator) + 5) / 10;\n return (_quotient);\n }\n}\n\n", "sourcePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "ast": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "exportedSymbols": { "Doneth": [ - 1194 + 1146 ], "ERC20": [ - 1261 + 1213 ], "ERC20Basic": [ - 1221 - ], - "Ownable": [ - 48 + 1173 ], "SafeMath": [ - 1393 + 1345 ] }, - "id": 1394, + "id": 1346, "nodeType": "SourceUnit", "nodes": [ { @@ -126,20 +123,20 @@ "contractKind": "contract", "documentation": "@title Doneth (Doneth)\n@dev Doneth is a contract that allows shared access to funds\nin the form of Ether and ERC20 tokens. It is especially relevant\nto donation based projects. The admins of the contract determine \nwho is a member, and each member gets a number of shares. The \nnumber of shares each member has determines how much Ether/ERC20 \nthe member can withdraw from the contract.", "fullyImplemented": true, - "id": 48, + "id": 1146, "linearizedBaseContracts": [ - 48 + 1146 ], - "name": "Ownable", + "name": "Doneth", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 3, - "name": "owner", + "name": "implementation", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "640:20:0", + "scope": 1146, + "src": "467:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -150,7 +147,33 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "640:7:0", + "src": "467:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1146, + "src": "557:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -161,26 +184,26 @@ }, { "body": { - "id": 11, + "id": 13, "nodeType": "Block", - "src": "693:34:0", + "src": "610:34:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 9, + "id": 11, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 6, + "id": 8, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "703:5:0", + "referencedDeclaration": 5, + "src": "620:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -192,18 +215,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 7, + "id": 9, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "711:2:0", + "referencedDeclaration": 1512, + "src": "628:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 8, + "id": 10, "isConstant": false, "isLValue": false, "isPure": false, @@ -211,56 +234,56 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "711:9:0", + "src": "628:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "703:17:0", + "src": "620:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 10, + "id": 12, "nodeType": "ExpressionStatement", - "src": "703:17:0" + "src": "620:17:0" } ] }, "documentation": null, - "id": 12, + "id": 14, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 4, + "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "683:2:0" + "src": "600:2:0" }, "payable": false, "returnParameters": { - "id": 5, + "id": 7, "nodeType": "ParameterList", "parameters": [], - "src": "693:0:0" + "src": "610:0:0" }, - "scope": 48, - "src": "667:60:0", + "scope": 1146, + "src": "584:60:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 27, + "id": 29, "nodeType": "Block", - "src": "754:78:0", + "src": "671:78:0", "statements": [ { "expression": { @@ -272,7 +295,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 23, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -283,7 +306,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18, + "id": 20, "isConstant": false, "isLValue": false, "isPure": false, @@ -292,18 +315,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 15, + "id": 17, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "772:3:0", + "referencedDeclaration": 1500, + "src": "689:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 16, + "id": 18, "isConstant": false, "isLValue": false, "isPure": false, @@ -311,7 +334,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "772:10:0", + "src": "689:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -321,18 +344,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 17, + "id": 19, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "786:5:0", + "referencedDeclaration": 5, + "src": "703:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "772:19:0", + "src": "689:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -346,7 +369,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 22, + "id": 24, "isConstant": false, "isLValue": false, "isPure": false, @@ -355,18 +378,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 19, + "id": 21, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "795:2:0", + "referencedDeclaration": 1512, + "src": "712:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 20, + "id": 22, "isConstant": false, "isLValue": false, "isPure": false, @@ -374,7 +397,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "795:9:0", + "src": "712:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -384,24 +407,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 21, + "id": 23, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "808:5:0", + "referencedDeclaration": 5, + "src": "725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "795:18:0", + "src": "712:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "772:41:0", + "src": "689:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -415,21 +438,21 @@ "typeString": "bool" } ], - "id": 14, + "id": 16, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1514, - "src": "764:7:0", + "referencedDeclaration": 1503, + "src": "681:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 24, + "id": 26, "isConstant": false, "isLValue": false, "isPure": false, @@ -437,41 +460,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "764:50:0", + "src": "681:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25, + "id": 27, "nodeType": "ExpressionStatement", - "src": "764:50:0" + "src": "681:50:0" }, { - "id": 26, + "id": 28, "nodeType": "PlaceholderStatement", - "src": "824:1:0" + "src": "741:1:0" } ] }, "documentation": null, - "id": 28, + "id": 30, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 13, + "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "751:2:0" + "src": "668:2:0" }, - "src": "733:99:0", + "src": "650:99:0", "visibility": "internal" }, { "body": { - "id": 46, + "id": 48, "nodeType": "Block", - "src": "900:85:0", + "src": "817:85:0", "statements": [ { "condition": { @@ -480,19 +503,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 39, + "id": 41, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 35, + "id": 37, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "914:8:0", + "referencedDeclaration": 32, + "src": "831:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -506,14 +529,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 37, + "id": 39, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "934:1:0", + "src": "851:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -529,20 +552,20 @@ "typeString": "int_const 0" } ], - "id": 36, + "id": 38, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "926:7:0", + "src": "843:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 38, + "id": 40, "isConstant": false, "isLValue": false, "isPure": true, @@ -550,43 +573,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "926:10:0", + "src": "843:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "914:22:0", + "src": "831:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 45, + "id": 47, "nodeType": "IfStatement", - "src": "910:69:0", + "src": "827:69:0", "trueBody": { - "id": 44, + "id": 46, "nodeType": "Block", - "src": "938:41:0", + "src": "855:41:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 42, + "id": 44, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 40, + "id": 42, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "952:5:0", + "referencedDeclaration": 5, + "src": "869:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -596,26 +619,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 41, + "id": 43, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "960:8:0", + "referencedDeclaration": 32, + "src": "877:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "952:16:0", + "src": "869:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 43, + "id": 45, "nodeType": "ExpressionStatement", - "src": "952:16:0" + "src": "869:16:0" } ] } @@ -623,44 +646,44 @@ ] }, "documentation": null, - "id": 47, + "id": 49, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 33, + "id": 35, "modifierName": { "argumentTypes": null, - "id": 32, + "id": 34, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "883:9:0", + "referencedDeclaration": 30, + "src": "800:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "883:9:0" + "src": "800:9:0" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 31, + "id": 33, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30, + "id": 32, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 47, - "src": "865:16:0", + "scope": 49, + "src": "782:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -668,10 +691,10 @@ "typeString": "address" }, "typeName": { - "id": 29, + "id": 31, "name": "address", "nodeType": "ElementaryTypeName", - "src": "865:7:0", + "src": "782:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -681,81 +704,42 @@ "visibility": "internal" } ], - "src": "864:18:0" + "src": "781:18:0" }, "payable": false, "returnParameters": { - "id": 34, + "id": 36, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:0" + "src": "817:0:0" }, - "scope": 48, - "src": "838:147:0", + "scope": 1146, + "src": "755:147:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" - } - ], - "scope": 1394, - "src": "617:370:0" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 49, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "1008:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$48", - "typeString": "contract Ownable" - } - }, - "id": 50, - "nodeType": "InheritanceSpecifier", - "src": "1008:7:0" - } - ], - "contractDependencies": [ - 48 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1194, - "linearizedBaseContracts": [ - 1194, - 48 - ], - "name": "Doneth", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "id": 53, + "id": 52, "libraryName": { "contractScope": null, - "id": 51, + "id": 50, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1393, - "src": "1028:8:0", + "referencedDeclaration": 1345, + "src": "914:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$1393", + "typeIdentifier": "t_contract$_SafeMath_$1345", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1022:27:0", + "src": "908:27:0", "typeName": { - "id": 52, + "id": 51, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1041:7:0", + "src": "927:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -764,11 +748,11 @@ }, { "constant": false, - "id": 55, + "id": 54, "name": "initialized", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1057:23:0", + "scope": 1146, + "src": "943:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -776,10 +760,10 @@ "typeString": "bool" }, "typeName": { - "id": 54, + "id": 53, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1057:4:0", + "src": "943:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -790,11 +774,11 @@ }, { "constant": false, - "id": 57, + "id": 56, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1115:18:0", + "scope": 1146, + "src": "1001:18:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -802,10 +786,10 @@ "typeString": "string" }, "typeName": { - "id": 56, + "id": 55, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1115:6:0", + "src": "1001:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -816,11 +800,11 @@ }, { "constant": false, - "id": 59, + "id": 58, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1186:26:0", + "scope": 1146, + "src": "1072:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -828,10 +812,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 57, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1186:7:0", + "src": "1072:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -842,11 +826,11 @@ }, { "constant": false, - "id": 61, + "id": 60, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1265:29:0", + "scope": 1146, + "src": "1151:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -854,10 +838,10 @@ "typeString": "uint256" }, "typeName": { - "id": 60, + "id": 59, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1265:7:0", + "src": "1151:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -868,11 +852,11 @@ }, { "constant": false, - "id": 63, + "id": 62, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1354:33:0", + "scope": 1146, + "src": "1240:33:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -880,10 +864,10 @@ "typeString": "uint256" }, "typeName": { - "id": 62, + "id": 61, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1354:7:0", + "src": "1240:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -894,11 +878,11 @@ }, { "constant": true, - "id": 66, + "id": 65, "name": "PRECISION", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1454:38:0", + "scope": 1146, + "src": "1340:38:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -906,10 +890,10 @@ "typeString": "uint256" }, "typeName": { - "id": 64, + "id": 63, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1454:7:0", + "src": "1340:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -918,14 +902,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 65, + "id": 64, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1490:2:0", + "src": "1376:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -937,11 +921,11 @@ }, { "constant": false, - "id": 68, + "id": 67, "name": "sharedExpense", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1546:28:0", + "scope": 1146, + "src": "1432:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -949,10 +933,10 @@ "typeString": "uint256" }, "typeName": { - "id": 67, + "id": 66, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1546:7:0", + "src": "1432:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -963,11 +947,11 @@ }, { "constant": false, - "id": 70, + "id": 69, "name": "sharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1580:37:0", + "scope": 1146, + "src": "1466:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -975,10 +959,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 68, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1580:7:0", + "src": "1466:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -989,44 +973,44 @@ }, { "constant": false, - "id": 74, + "id": 73, "name": "members", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1661:41:0", + "scope": 1146, + "src": "1547:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "typeName": { - "id": 73, + "id": 72, "keyType": { - "id": 71, + "id": 70, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1669:7:0", + "src": "1555:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1661:26:0", + "src": "1547:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "valueType": { "contractScope": null, - "id": 72, + "id": 71, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "1680:6:0", + "referencedDeclaration": 91, + "src": "1566:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } } @@ -1036,11 +1020,11 @@ }, { "constant": false, - "id": 77, + "id": 76, "name": "memberKeys", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1708:27:0", + "scope": 1146, + "src": "1594:27:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -1049,19 +1033,19 @@ }, "typeName": { "baseType": { - "id": 75, + "id": 74, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1708:7:0", + "src": "1594:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 76, + "id": 75, "length": null, "nodeType": "ArrayTypeName", - "src": "1708:9:0", + "src": "1594:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -1072,15 +1056,15 @@ }, { "canonicalName": "Doneth.Member", - "id": 92, + "id": 91, "members": [ { "constant": false, - "id": 79, + "id": 78, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1765:11:0", + "scope": 91, + "src": "1651:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1088,10 +1072,10 @@ "typeString": "bool" }, "typeName": { - "id": 78, + "id": 77, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1765:4:0", + "src": "1651:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1102,11 +1086,11 @@ }, { "constant": false, - "id": 81, + "id": 80, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1786:10:0", + "scope": 91, + "src": "1672:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1114,10 +1098,10 @@ "typeString": "bool" }, "typeName": { - "id": 80, + "id": 79, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1786:4:0", + "src": "1672:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1128,11 +1112,11 @@ }, { "constant": false, - "id": 83, + "id": 82, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1806:14:0", + "scope": 91, + "src": "1692:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1140,10 +1124,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 81, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1806:7:0", + "src": "1692:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1154,11 +1138,11 @@ }, { "constant": false, - "id": 85, + "id": 84, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1830:17:0", + "scope": 91, + "src": "1716:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1166,10 +1150,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 83, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1830:7:0", + "src": "1716:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1180,11 +1164,11 @@ }, { "constant": false, - "id": 87, + "id": 86, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1857:17:0", + "scope": 91, + "src": "1743:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1192,10 +1176,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 85, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1857:6:0", + "src": "1743:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1206,11 +1190,11 @@ }, { "constant": false, - "id": 91, + "id": 90, "name": "tokensWithdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1884:43:0", + "scope": 91, + "src": "1770:43:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1218,28 +1202,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 90, + "id": 89, "keyType": { - "id": 88, + "id": 87, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1892:7:0", + "src": "1778:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1884:27:0", + "src": "1770:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 89, + "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1903:7:0", + "src": "1789:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1252,161 +1236,60 @@ ], "name": "Member", "nodeType": "StructDefinition", - "scope": 1194, - "src": "1741:193:0", + "scope": 1146, + "src": "1627:193:0", "visibility": "public" }, { "constant": false, - "id": 96, + "id": 95, "name": "tokens", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2010:39:0", + "scope": 1146, + "src": "1896:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 95, + "id": 94, "keyType": { - "id": 93, + "id": 92, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:7:0", + "src": "1904:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2010:25:0", + "src": "1896:27:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "valueType": { - "contractScope": null, - "id": 94, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 104, - "src": "2029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage_ptr", - "typeString": "struct Doneth.Token" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "tokenKeys", - "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2055:26:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", + "id": 93, + "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2055:7:0", + "src": "1915:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2055:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" } }, "value": null, "visibility": "public" }, - { - "canonicalName": "Doneth.Token", - "id": 104, - "members": [ - { - "constant": false, - "id": 101, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2110:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 100, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2110:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "name": "totalWithdrawn", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2131:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 102, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2131:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Token", - "nodeType": "StructDefinition", - "scope": 1194, - "src": "2087:73:0", - "visibility": "public" - }, { "body": { - "id": 223, + "id": 179, "nodeType": "Block", - "src": "2363:911:0", + "src": "1967:484:0", "statements": [ { "expression": { @@ -1414,7 +1297,7 @@ "arguments": [ { "argumentTypes": null, - "id": 113, + "id": 100, "isConstant": false, "isLValue": false, "isPure": false, @@ -1422,15 +1305,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2381:12:0", + "src": "1985:12:0", "subExpression": { "argumentTypes": null, - "id": 112, + "id": 99, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2382:11:0", + "referencedDeclaration": 54, + "src": "1986:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1440,24 +1323,6 @@ "typeIdentifier": "t_bool", "typeString": "bool" } - }, - { - "argumentTypes": null, - "hexValue": "414c524541445920494e495449414c495a4544", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2395:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" - }, - "value": "ALREADY INITIALIZED" } ], "expression": { @@ -1465,27 +1330,23 @@ { "typeIdentifier": "t_bool", "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" } ], - "id": 111, + "id": 98, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1515, - "src": "2373:7:0", + "referencedDeclaration": 1503, + "src": "1977:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 115, + "id": 101, "isConstant": false, "isLValue": false, "isPure": false, @@ -1493,32 +1354,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2373:44:0", + "src": "1977:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 116, + "id": 102, "nodeType": "ExpressionStatement", - "src": "2373:44:0" + "src": "1977:21:0" }, { "expression": { "argumentTypes": null, - "id": 119, + "id": 105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 117, + "id": 103, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2427:11:0", + "referencedDeclaration": 54, + "src": "2008:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1529,14 +1390,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 118, + "id": 104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2441:4:0", + "src": "2022:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1544,32 +1405,32 @@ }, "value": "true" }, - "src": "2427:18:0", + "src": "2008:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 120, + "id": 106, "nodeType": "ExpressionStatement", - "src": "2427:18:0" + "src": "2008:18:0" }, { "expression": { "argumentTypes": null, - "id": 124, + "id": 110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 121, + "id": 107, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "2455:5:0", + "referencedDeclaration": 5, + "src": "2037:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1581,18 +1442,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 122, + "id": 108, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2463:2:0", + "referencedDeclaration": 1512, + "src": "2045:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 123, + "id": 109, "isConstant": false, "isLValue": false, "isPure": false, @@ -1600,38 +1461,38 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2463:9:0", + "src": "2045:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2455:17:0", + "src": "2037:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 125, + "id": 111, "nodeType": "ExpressionStatement", - "src": "2455:17:0" + "src": "2037:17:0" }, { "expression": { "argumentTypes": null, - "id": 129, + "id": 115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 126, + "id": 112, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "2482:18:0", + "referencedDeclaration": 62, + "src": "2064:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1643,18 +1504,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 127, + "id": 113, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1501, - "src": "2503:5:0", + "referencedDeclaration": 1490, + "src": "2085:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 128, + "id": 114, "isConstant": false, "isLValue": false, "isPure": false, @@ -1662,405 +1523,130 @@ "memberName": "number", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2503:12:0", + "src": "2085:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2482:33:0", + "src": "2064:33:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 130, + "id": 116, "nodeType": "ExpressionStatement", - "src": "2482:33:0" + "src": "2064:33:0" }, { - "condition": { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 118, + "name": "newMember", + "nodeType": "VariableDeclaration", + "scope": 180, + "src": "2108:23:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member" + }, + "typeName": { + "contractScope": null, + "id": 117, + "name": "Member", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 91, + "src": "2108:6:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", + "typeString": "struct Doneth.Member" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 119, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "2108:23:0" + }, + { + "expression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 136, + "id": 124, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { + "leftHandSide": { "argumentTypes": null, "expression": { "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 132, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2535:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2529:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2529:20:0", + "id": 120, + "name": "newMember", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 118, + "src": "2141:9:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2529:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2559:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2529:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 140, - "nodeType": "IfStatement", - "src": "2525:46:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 137, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2563:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2563:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2563:8:0" - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 142, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2591:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 141, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2585:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2585:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member memory" } }, - "id": 144, + "id": 122, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberName": "length", + "lValueRequested": true, + "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2585:26:0", + "referencedDeclaration": 78, + "src": "2141:16:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "hexValue": "3231", - "id": 145, + "hexValue": "74727565", + "id": 123, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "number", + "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2614:2:0", + "src": "2160:4:0", "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "value": "21" + "value": "true" }, - "src": "2585:31:0", + "src": "2141:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "falseBody": null, - "id": 150, - "nodeType": "IfStatement", - "src": "2581:45:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 147, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2618:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2618:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:8:0" - } - }, - { - "expression": { - "argumentTypes": null, - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 151, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "2636:4:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 152, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2643:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2636:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 154, + "id": 125, "nodeType": "ExpressionStatement", - "src": "2636:20:0" - }, - { - "assignments": [], - "declarations": [ - { - "constant": false, - "id": 156, - "name": "newMember", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2721:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member" - }, - "typeName": { - "contractScope": null, - "id": 155, - "name": "Member", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "2721:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", - "typeString": "struct Doneth.Member" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 157, - "initialValue": null, - "nodeType": "VariableDeclarationStatement", - "src": "2721:23:0" + "src": "2141:23:0" }, { "expression": { "argumentTypes": null, - "id": 162, + "id": 130, "isConstant": false, "isLValue": false, "isPure": false, @@ -2069,26 +1655,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 158, + "id": 126, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2754:9:0", + "referencedDeclaration": 118, + "src": "2174:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 160, + "id": 128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "exists", + "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "2754:16:0", + "referencedDeclaration": 80, + "src": "2174:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2099,14 +1685,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 161, + "id": 129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2773:4:0", + "src": "2192:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2114,185 +1700,56 @@ }, "value": "true" }, - "src": "2754:23:0", + "src": "2174:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 163, + "id": 131, "nodeType": "ExpressionStatement", - "src": "2754:23:0" + "src": "2174:22:0" }, { "expression": { "argumentTypes": null, - "id": 168, + "id": 137, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "id": 164, - "name": "newMember", + "id": 132, + "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2787:9:0", + "referencedDeclaration": 73, + "src": "2206:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", + "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 166, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "admin", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "2787:15:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 167, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2805:4:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2787:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "2787:22:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 170, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2819:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 172, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "memberName", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "2819:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 173, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2842:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2819:35:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 175, - "nodeType": "ExpressionStatement", - "src": "2819:35:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 176, - "name": "members", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "2865:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", - "typeString": "mapping(address => struct Doneth.Member storage ref)" - } - }, - "id": 179, + "id": 135, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 177, + "id": 133, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2873:2:0", + "referencedDeclaration": 1512, + "src": "2214:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 178, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -2300,7 +1757,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2873:9:0", + "src": "2214:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2311,9 +1768,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2865:18:0", + "src": "2206:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -2321,26 +1778,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 180, + "id": 136, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2886:9:0", + "referencedDeclaration": 118, + "src": "2227:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "2865:30:0", + "src": "2206:30:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 182, + "id": 138, "nodeType": "ExpressionStatement", - "src": "2865:30:0" + "src": "2206:30:0" }, { "expression": { @@ -2350,18 +1807,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 186, + "id": 142, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2921:2:0", + "referencedDeclaration": 1512, + "src": "2262:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 187, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -2369,7 +1826,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2921:9:0", + "src": "2262:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2385,18 +1842,18 @@ ], "expression": { "argumentTypes": null, - "id": 183, + "id": 139, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "2905:10:0", + "referencedDeclaration": 76, + "src": "2246:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 185, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -2404,13 +1861,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2905:15:0", + "src": "2246:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 188, + "id": 144, "isConstant": false, "isLValue": false, "isPure": false, @@ -2418,32 +1875,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2905:26:0", + "src": "2246:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 189, + "id": 145, "nodeType": "ExpressionStatement", - "src": "2905:26:0" + "src": "2246:26:0" }, { "expression": { "argumentTypes": null, - "id": 195, + "id": 151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 190, + "id": 146, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2981:11:0", + "referencedDeclaration": 58, + "src": "2283:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2457,14 +1914,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 193, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3011:1:0", + "src": "2313:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2482,32 +1939,32 @@ ], "expression": { "argumentTypes": null, - "id": 191, + "id": 147, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2995:11:0", + "referencedDeclaration": 58, + "src": "2297:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 192, + "id": 148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "2995:15:0", + "referencedDeclaration": 1305, + "src": "2297:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 194, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, @@ -2515,26 +1972,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2995:18:0", + "src": "2297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2981:32:0", + "src": "2283:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 196, + "id": 152, "nodeType": "ExpressionStatement", - "src": "2981:32:0" + "src": "2283:32:0" }, { "expression": { "argumentTypes": null, - "id": 210, + "id": 166, "isConstant": false, "isLValue": false, "isPure": false, @@ -2545,34 +2002,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 197, + "id": 153, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3023:7:0", + "referencedDeclaration": 73, + "src": "2325:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 200, + "id": 156, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 198, + "id": 154, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3031:2:0", + "referencedDeclaration": 1512, + "src": "2333:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 199, + "id": 155, "isConstant": false, "isLValue": false, "isPure": false, @@ -2580,7 +2037,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3031:9:0", + "src": "2333:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2591,21 +2048,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3023:18:0", + "src": "2325:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 201, + "id": 157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3023:25:0", + "referencedDeclaration": 82, + "src": "2325:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2619,14 +2076,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 208, + "id": 164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3081:1:0", + "src": "2383:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2648,34 +2105,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 202, + "id": 158, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3051:7:0", + "referencedDeclaration": 73, + "src": "2353:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 205, + "id": 161, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 203, + "id": 159, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3059:2:0", + "referencedDeclaration": 1512, + "src": "2361:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 204, + "id": 160, "isConstant": false, "isLValue": false, "isPure": false, @@ -2683,7 +2140,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3059:9:0", + "src": "2361:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2694,41 +2151,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3051:18:0", + "src": "2353:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 206, + "id": 162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3051:25:0", + "referencedDeclaration": 82, + "src": "2353:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 207, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "3051:29:0", + "referencedDeclaration": 1305, + "src": "2353:29:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 209, + "id": 165, "isConstant": false, "isLValue": false, "isPure": false, @@ -2736,21 +2193,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3051:32:0", + "src": "2353:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3023:60:0", + "src": "2325:60:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 211, + "id": 167, "nodeType": "ExpressionStatement", - "src": "3023:60:0" + "src": "2325:60:0" }, { "expression": { @@ -2760,18 +2217,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 213, + "id": 169, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3102:2:0", + "referencedDeclaration": 1512, + "src": "2404:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 214, + "id": 170, "isConstant": false, "isLValue": false, "isPure": false, @@ -2779,7 +2236,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3102:9:0", + "src": "2404:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2788,14 +2245,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 215, + "id": 171, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3113:1:0", + "src": "2415:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2809,34 +2266,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 216, + "id": 172, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3116:7:0", + "referencedDeclaration": 73, + "src": "2418:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 219, + "id": 175, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 217, + "id": 173, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3124:2:0", + "referencedDeclaration": 1512, + "src": "2426:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 218, + "id": 174, "isConstant": false, "isLValue": false, "isPure": false, @@ -2844,7 +2301,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3124:9:0", + "src": "2426:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2855,21 +2312,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3116:18:0", + "src": "2418:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 220, + "id": 176, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3116:25:0", + "referencedDeclaration": 82, + "src": "2418:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2891,18 +2348,18 @@ "typeString": "uint256" } ], - "id": 212, + "id": 168, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "3093:8:0", + "referencedDeclaration": 212, + "src": "2395:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 221, + "id": 177, "isConstant": false, "isLValue": false, "isPure": false, @@ -2910,20 +2367,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3093:49:0", + "src": "2395:49:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 222, + "id": 178, "nodeType": "ExpressionStatement", - "src": "3093:49:0" + "src": "2395:49:0" } ] }, "documentation": null, - "id": 224, + "id": 180, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2931,73 +2388,20 @@ "name": "init", "nodeType": "FunctionDefinition", "parameters": { - "id": 109, + "id": 96, "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 106, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2313:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 105, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2313:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 108, - "name": "_founderName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2335:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 107, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2335:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2312:43:0" + "parameters": [], + "src": "1957:2:0" }, "payable": false, "returnParameters": { - "id": 110, + "id": 97, "nodeType": "ParameterList", "parameters": [], - "src": "2363:0:0" + "src": "1967:0:0" }, - "scope": 1194, - "src": "2299:975:0", + "scope": 1146, + "src": "1944:507:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -3005,21 +2409,21 @@ { "anonymous": false, "documentation": null, - "id": 230, + "id": 186, "name": "Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 229, + "id": 185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 226, + "id": 182, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3294:12:0", + "scope": 186, + "src": "2471:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3027,10 +2431,10 @@ "typeString": "address" }, "typeName": { - "id": 225, + "id": 181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:0", + "src": "2471:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3041,12 +2445,12 @@ }, { "constant": false, - "id": 228, + "id": 184, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3308:10:0", + "scope": 186, + "src": "2485:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3054,10 +2458,10 @@ "typeString": "uint256" }, "typeName": { - "id": 227, + "id": 183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3308:4:0", + "src": "2485:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3067,28 +2471,28 @@ "visibility": "internal" } ], - "src": "3293:26:0" + "src": "2470:26:0" }, - "src": "3280:40:0" + "src": "2457:40:0" }, { "anonymous": false, "documentation": null, - "id": 238, + "id": 194, "name": "Withdraw", "nodeType": "EventDefinition", "parameters": { - "id": 237, + "id": 193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 232, + "id": 188, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3340:12:0", + "scope": 194, + "src": "2517:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3096,10 +2500,10 @@ "typeString": "address" }, "typeName": { - "id": 231, + "id": 187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3340:7:0", + "src": "2517:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3110,12 +2514,12 @@ }, { "constant": false, - "id": 234, + "id": 190, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3354:10:0", + "scope": 194, + "src": "2531:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3123,10 +2527,10 @@ "typeString": "uint256" }, "typeName": { - "id": 233, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3354:4:0", + "src": "2531:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3137,12 +2541,12 @@ }, { "constant": false, - "id": 236, + "id": 192, "indexed": false, "name": "newTotalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3366:25:0", + "scope": 194, + "src": "2543:25:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3150,10 +2554,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 191, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3366:7:0", + "src": "2543:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3163,28 +2567,28 @@ "visibility": "internal" } ], - "src": "3339:53:0" + "src": "2516:53:0" }, - "src": "3325:68:0" + "src": "2502:68:0" }, { "anonymous": false, "documentation": null, - "id": 248, + "id": 204, "name": "TokenWithdraw", "nodeType": "EventDefinition", "parameters": { - "id": 247, + "id": 203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 196, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3418:12:0", + "scope": 204, + "src": "2595:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3192,10 +2596,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 195, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3418:7:0", + "src": "2595:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3206,12 +2610,12 @@ }, { "constant": false, - "id": 242, + "id": 198, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3432:10:0", + "scope": 204, + "src": "2609:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3219,10 +2623,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 197, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3432:4:0", + "src": "2609:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3233,12 +2637,12 @@ }, { "constant": false, - "id": 244, + "id": 200, "indexed": false, "name": "token", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3444:13:0", + "scope": 204, + "src": "2621:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3246,10 +2650,10 @@ "typeString": "address" }, "typeName": { - "id": 243, + "id": 199, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3444:7:0", + "src": "2621:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3260,12 +2664,12 @@ }, { "constant": false, - "id": 246, + "id": 202, "indexed": false, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3459:11:0", + "scope": 204, + "src": "2636:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3273,10 +2677,10 @@ "typeString": "uint256" }, "typeName": { - "id": 245, + "id": 201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3459:4:0", + "src": "2636:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3286,28 +2690,28 @@ "visibility": "internal" } ], - "src": "3417:54:0" + "src": "2594:54:0" }, - "src": "3398:74:0" + "src": "2575:74:0" }, { "anonymous": false, "documentation": null, - "id": 256, + "id": 212, "name": "AddShare", "nodeType": "EventDefinition", "parameters": { - "id": 255, + "id": 211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 250, + "id": 206, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3492:11:0", + "scope": 212, + "src": "2669:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3315,10 +2719,10 @@ "typeString": "address" }, "typeName": { - "id": 249, + "id": 205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "2669:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3329,12 +2733,12 @@ }, { "constant": false, - "id": 252, + "id": 208, "indexed": false, "name": "addedShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3505:19:0", + "scope": 212, + "src": "2682:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3342,10 +2746,10 @@ "typeString": "uint256" }, "typeName": { - "id": 251, + "id": 207, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3505:7:0", + "src": "2682:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3356,12 +2760,12 @@ }, { "constant": false, - "id": 254, + "id": 210, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3526:22:0", + "scope": 212, + "src": "2703:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3369,10 +2773,10 @@ "typeString": "uint256" }, "typeName": { - "id": 253, + "id": 209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3526:7:0", + "src": "2703:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3382,28 +2786,28 @@ "visibility": "internal" } ], - "src": "3491:58:0" + "src": "2668:58:0" }, - "src": "3477:73:0" + "src": "2654:73:0" }, { "anonymous": false, "documentation": null, - "id": 264, + "id": 220, "name": "RemoveShare", "nodeType": "EventDefinition", "parameters": { - "id": 263, + "id": 219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 258, + "id": 214, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3573:11:0", + "scope": 220, + "src": "2750:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3411,10 +2815,10 @@ "typeString": "address" }, "typeName": { - "id": 257, + "id": 213, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3573:7:0", + "src": "2750:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3425,12 +2829,12 @@ }, { "constant": false, - "id": 260, + "id": 216, "indexed": false, "name": "removedShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3586:21:0", + "scope": 220, + "src": "2763:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3438,10 +2842,10 @@ "typeString": "uint256" }, "typeName": { - "id": 259, + "id": 215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "2763:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3452,12 +2856,12 @@ }, { "constant": false, - "id": 262, + "id": 218, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3609:22:0", + "scope": 220, + "src": "2786:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3465,10 +2869,10 @@ "typeString": "uint256" }, "typeName": { - "id": 261, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3609:7:0", + "src": "2786:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3478,28 +2882,28 @@ "visibility": "internal" } ], - "src": "3572:60:0" + "src": "2749:60:0" }, - "src": "3555:78:0" + "src": "2732:78:0" }, { "anonymous": false, "documentation": null, - "id": 272, + "id": 228, "name": "ChangePrivilege", "nodeType": "EventDefinition", "parameters": { - "id": 271, + "id": 227, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 266, + "id": 222, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3660:11:0", + "scope": 228, + "src": "2837:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3507,10 +2911,10 @@ "typeString": "address" }, "typeName": { - "id": 265, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3660:7:0", + "src": "2837:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3521,12 +2925,12 @@ }, { "constant": false, - "id": 268, + "id": 224, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3673:13:0", + "scope": 228, + "src": "2850:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3534,10 +2938,10 @@ "typeString": "bool" }, "typeName": { - "id": 267, + "id": 223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3673:4:0", + "src": "2850:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3548,12 +2952,12 @@ }, { "constant": false, - "id": 270, + "id": 226, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3688:13:0", + "scope": 228, + "src": "2865:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3561,10 +2965,10 @@ "typeString": "bool" }, "typeName": { - "id": 269, + "id": 225, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3688:4:0", + "src": "2865:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3574,28 +2978,28 @@ "visibility": "internal" } ], - "src": "3659:43:0" + "src": "2836:43:0" }, - "src": "3638:65:0" + "src": "2815:65:0" }, { "anonymous": false, "documentation": null, - "id": 278, + "id": 234, "name": "ChangeContractName", "nodeType": "EventDefinition", "parameters": { - "id": 277, + "id": 233, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 274, + "id": 230, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3733:15:0", + "scope": 234, + "src": "2910:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3603,10 +3007,10 @@ "typeString": "string" }, "typeName": { - "id": 273, + "id": 229, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3733:6:0", + "src": "2910:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3617,12 +3021,12 @@ }, { "constant": false, - "id": 276, + "id": 232, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3750:15:0", + "scope": 234, + "src": "2927:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3630,10 +3034,10 @@ "typeString": "string" }, "typeName": { - "id": 275, + "id": 231, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3750:6:0", + "src": "2927:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3643,28 +3047,28 @@ "visibility": "internal" } ], - "src": "3732:34:0" + "src": "2909:34:0" }, - "src": "3708:59:0" + "src": "2885:59:0" }, { "anonymous": false, "documentation": null, - "id": 286, + "id": 242, "name": "ChangeMemberName", "nodeType": "EventDefinition", "parameters": { - "id": 285, + "id": 241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 280, + "id": 236, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3795:11:0", + "scope": 242, + "src": "2972:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3672,10 +3076,10 @@ "typeString": "address" }, "typeName": { - "id": 279, + "id": 235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3795:7:0", + "src": "2972:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3686,12 +3090,12 @@ }, { "constant": false, - "id": 282, + "id": 238, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3808:15:0", + "scope": 242, + "src": "2985:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3699,10 +3103,10 @@ "typeString": "string" }, "typeName": { - "id": 281, + "id": 237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3808:6:0", + "src": "2985:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3713,12 +3117,12 @@ }, { "constant": false, - "id": 284, + "id": 240, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3825:15:0", + "scope": 242, + "src": "3002:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3726,10 +3130,10 @@ "typeString": "string" }, "typeName": { - "id": 283, + "id": 239, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3825:6:0", + "src": "3002:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3739,28 +3143,28 @@ "visibility": "internal" } ], - "src": "3794:47:0" + "src": "2971:47:0" }, - "src": "3772:70:0" + "src": "2949:70:0" }, { "anonymous": false, "documentation": null, - "id": 294, + "id": 250, "name": "ChangeSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 293, + "id": 249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 244, "indexed": false, "name": "contractBalance", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3873:23:0", + "scope": 250, + "src": "3050:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3768,10 +3172,10 @@ "typeString": "uint256" }, "typeName": { - "id": 287, + "id": 243, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3873:7:0", + "src": "3050:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3782,12 +3186,12 @@ }, { "constant": false, - "id": 290, + "id": 246, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3898:16:0", + "scope": 250, + "src": "3075:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3795,10 +3199,10 @@ "typeString": "uint256" }, "typeName": { - "id": 289, + "id": 245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3898:7:0", + "src": "3075:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3809,12 +3213,12 @@ }, { "constant": false, - "id": 292, + "id": 248, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3916:16:0", + "scope": 250, + "src": "3093:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3822,10 +3226,10 @@ "typeString": "uint256" }, "typeName": { - "id": 291, + "id": 247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3916:7:0", + "src": "3093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3835,28 +3239,28 @@ "visibility": "internal" } ], - "src": "3872:61:0" + "src": "3049:61:0" }, - "src": "3847:87:0" + "src": "3024:87:0" }, { "anonymous": false, "documentation": null, - "id": 304, + "id": 260, "name": "WithdrawSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 303, + "id": 259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 296, + "id": 252, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3967:12:0", + "scope": 260, + "src": "3144:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3864,10 +3268,10 @@ "typeString": "address" }, "typeName": { - "id": 295, + "id": 251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3967:7:0", + "src": "3144:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3878,12 +3282,12 @@ }, { "constant": false, - "id": 298, + "id": 254, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3981:10:0", + "scope": 260, + "src": "3158:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3891,10 +3295,10 @@ "typeString": "address" }, "typeName": { - "id": 297, + "id": 253, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3981:7:0", + "src": "3158:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3905,12 +3309,12 @@ }, { "constant": false, - "id": 300, + "id": 256, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3993:10:0", + "scope": 260, + "src": "3170:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3918,10 +3322,10 @@ "typeString": "uint256" }, "typeName": { - "id": 299, + "id": 255, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3993:4:0", + "src": "3170:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3932,12 +3336,12 @@ }, { "constant": false, - "id": 302, + "id": 258, "indexed": false, "name": "newSharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "4005:33:0", + "scope": 260, + "src": "3182:33:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3945,10 +3349,10 @@ "typeString": "uint256" }, "typeName": { - "id": 301, + "id": 257, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4005:7:0", + "src": "3182:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3958,15 +3362,15 @@ "visibility": "internal" } ], - "src": "3966:73:0" + "src": "3143:73:0" }, - "src": "3939:101:0" + "src": "3116:101:0" }, { "body": { - "id": 314, + "id": 270, "nodeType": "Block", - "src": "4126:47:0", + "src": "3303:47:0", "statements": [ { "expression": { @@ -3976,18 +3380,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 308, + "id": 264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4144:3:0", + "referencedDeclaration": 1500, + "src": "3321:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 309, + "id": 265, "isConstant": false, "isLValue": false, "isPure": false, @@ -3995,7 +3399,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4144:10:0", + "src": "3321:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4005,18 +3409,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 310, + "id": 266, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4156:3:0", + "referencedDeclaration": 1500, + "src": "3333:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 311, + "id": 267, "isConstant": false, "isLValue": false, "isPure": false, @@ -4024,7 +3428,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4156:9:0", + "src": "3333:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4042,18 +3446,18 @@ "typeString": "uint256" } ], - "id": 307, + "id": 263, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 230, - "src": "4136:7:0", + "referencedDeclaration": 186, + "src": "3313:7:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 312, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -4061,20 +3465,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4136:30:0", + "src": "3313:30:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 313, + "id": 269, "nodeType": "ExpressionStatement", - "src": "4136:30:0" + "src": "3313:30:0" } ] }, "documentation": null, - "id": 315, + "id": 271, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4082,29 +3486,29 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 305, + "id": 261, "nodeType": "ParameterList", "parameters": [], - "src": "4108:2:0" + "src": "3285:2:0" }, "payable": true, "returnParameters": { - "id": 306, + "id": 262, "nodeType": "ParameterList", "parameters": [], - "src": "4126:0:0" + "src": "3303:0:0" }, - "scope": 1194, - "src": "4099:74:0", + "scope": 1146, + "src": "3276:74:0", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 333, + "id": 289, "nodeType": "Block", - "src": "4200:95:0", + "src": "3377:95:0", "statements": [ { "condition": { @@ -4113,7 +3517,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 327, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, @@ -4124,7 +3528,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 320, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -4133,18 +3537,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 317, + "id": 273, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4215:3:0", + "referencedDeclaration": 1500, + "src": "3392:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 318, + "id": 274, "isConstant": false, "isLValue": false, "isPure": false, @@ -4152,7 +3556,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4215:10:0", + "src": "3392:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4162,18 +3566,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 319, + "id": 275, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "4229:5:0", + "referencedDeclaration": 5, + "src": "3406:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4215:19:0", + "src": "3392:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4183,7 +3587,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 326, + "id": 282, "isConstant": false, "isLValue": false, "isPure": false, @@ -4191,41 +3595,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4238:26:0", + "src": "3415:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 321, + "id": 277, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4239:7:0", + "referencedDeclaration": 73, + "src": "3416:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 324, + "id": 280, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 322, + "id": 278, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4247:3:0", + "referencedDeclaration": 1500, + "src": "3424:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 323, + "id": 279, "isConstant": false, "isLValue": false, "isPure": false, @@ -4233,7 +3637,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4247:10:0", + "src": "3424:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4244,21 +3648,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4239:19:0", + "src": "3416:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 325, + "id": 281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "4239:25:0", + "referencedDeclaration": 80, + "src": "3416:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4269,37 +3673,37 @@ "typeString": "bool" } }, - "src": "4215:49:0", + "src": "3392:49:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 331, + "id": 287, "nodeType": "IfStatement", - "src": "4211:63:0", + "src": "3388:63:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 328, + "id": 284, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4266:6:0", + "referencedDeclaration": 1505, + "src": "3443:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 329, + "id": 285, "isConstant": false, "isLValue": false, "isPure": false, @@ -4307,47 +3711,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4266:8:0", + "src": "3443:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 330, + "id": 286, "nodeType": "ExpressionStatement", - "src": "4266:8:0" + "src": "3443:8:0" } }, { - "id": 332, + "id": 288, "nodeType": "PlaceholderStatement", - "src": "4287:1:0" + "src": "3464:1:0" } ] }, "documentation": null, - "id": 334, + "id": 290, "name": "onlyAdmin", "nodeType": "ModifierDefinition", "parameters": { - "id": 316, + "id": 272, "nodeType": "ParameterList", "parameters": [], - "src": "4197:2:0" + "src": "3374:2:0" }, - "src": "4179:116:0", + "src": "3356:116:0", "visibility": "internal" }, { "body": { - "id": 348, + "id": 304, "nodeType": "Block", - "src": "4336:64:0", + "src": "3513:64:0", "statements": [ { "condition": { "argumentTypes": null, - "id": 342, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -4355,33 +3759,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4351:20:0", + "src": "3528:20:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 338, + "id": 294, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4352:7:0", + "referencedDeclaration": 73, + "src": "3529:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 340, + "id": 296, "indexExpression": { "argumentTypes": null, - "id": 339, + "id": 295, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "4360:3:0", + "referencedDeclaration": 292, + "src": "3537:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4392,21 +3796,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4352:12:0", + "src": "3529:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 341, + "id": 297, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "4352:19:0", + "referencedDeclaration": 78, + "src": "3529:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4418,30 +3822,30 @@ } }, "falseBody": null, - "id": 346, + "id": 302, "nodeType": "IfStatement", - "src": "4347:34:0", + "src": "3524:34:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 343, + "id": 299, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4373:6:0", + "referencedDeclaration": 1505, + "src": "3550:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 344, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -4449,39 +3853,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4373:8:0", + "src": "3550:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 345, + "id": 301, "nodeType": "ExpressionStatement", - "src": "4373:8:0" + "src": "3550:8:0" } }, { - "id": 347, + "id": 303, "nodeType": "PlaceholderStatement", - "src": "4392:1:0" + "src": "3569:1:0" } ] }, "documentation": null, - "id": 349, + "id": 305, "name": "onlyExisting", "nodeType": "ModifierDefinition", "parameters": { - "id": 337, + "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 336, + "id": 292, "name": "who", "nodeType": "VariableDeclaration", - "scope": 349, - "src": "4323:11:0", + "scope": 305, + "src": "3500:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4489,10 +3893,10 @@ "typeString": "address" }, "typeName": { - "id": 335, + "id": 291, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4323:7:0", + "src": "3500:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4502,34 +3906,34 @@ "visibility": "internal" } ], - "src": "4322:13:0" + "src": "3499:13:0" }, - "src": "4301:99:0", + "src": "3478:99:0", "visibility": "internal" }, { "body": { - "id": 357, + "id": 313, "nodeType": "Block", - "src": "4514:41:0", + "src": "3691:41:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 354, + "id": 310, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4531:10:0", + "referencedDeclaration": 76, + "src": "3708:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 355, + "id": 311, "isConstant": false, "isLValue": true, "isPure": false, @@ -4537,21 +3941,21 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4531:17:0", + "src": "3708:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 353, - "id": 356, + "functionReturnParameters": 309, + "id": 312, "nodeType": "Return", - "src": "4524:24:0" + "src": "3701:24:0" } ] }, "documentation": null, - "id": 358, + "id": 314, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4559,23 +3963,23 @@ "name": "getMemberCount", "nodeType": "FunctionDefinition", "parameters": { - "id": 350, + "id": 306, "nodeType": "ParameterList", "parameters": [], - "src": "4481:2:0" + "src": "3658:2:0" }, "payable": false, "returnParameters": { - "id": 353, + "id": 309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 352, + "id": 308, "name": "", "nodeType": "VariableDeclaration", - "scope": 358, - "src": "4508:4:0", + "scope": 314, + "src": "3685:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4583,10 +3987,10 @@ "typeString": "uint256" }, "typeName": { - "id": 351, + "id": 307, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4508:4:0", + "src": "3685:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4596,45 +4000,45 @@ "visibility": "internal" } ], - "src": "4507:6:0" + "src": "3684:6:0" }, - "scope": 1194, - "src": "4458:97:0", + "scope": 1146, + "src": "3635:97:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 369, + "id": 325, "nodeType": "Block", - "src": "4632:39:0", + "src": "3809:39:0", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 321, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4649:10:0", + "referencedDeclaration": 76, + "src": "3826:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 367, + "id": 323, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 322, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "4660:3:0", + "referencedDeclaration": 316, + "src": "3837:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4645,21 +4049,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4649:15:0", + "src": "3826:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 364, - "id": 368, + "functionReturnParameters": 320, + "id": 324, "nodeType": "Return", - "src": "4642:22:0" + "src": "3819:22:0" } ] }, "documentation": null, - "id": 370, + "id": 326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4667,16 +4071,16 @@ "name": "getMemberAtKey", "nodeType": "FunctionDefinition", "parameters": { - "id": 361, + "id": 317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 360, + "id": 316, "name": "key", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4589:8:0", + "scope": 326, + "src": "3766:8:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4684,10 +4088,10 @@ "typeString": "uint256" }, "typeName": { - "id": 359, + "id": 315, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4589:4:0", + "src": "3766:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4697,20 +4101,20 @@ "visibility": "internal" } ], - "src": "4588:10:0" + "src": "3765:10:0" }, "payable": false, "returnParameters": { - "id": 364, + "id": 320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 363, + "id": 319, "name": "", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4623:7:0", + "scope": 326, + "src": "3800:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4718,10 +4122,10 @@ "typeString": "address" }, "typeName": { - "id": 362, + "id": 318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4623:7:0", + "src": "3800:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4731,37 +4135,37 @@ "visibility": "internal" } ], - "src": "4622:9:0" + "src": "3799:9:0" }, - "scope": 1194, - "src": "4565:106:0", + "scope": 1146, + "src": "3742:106:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 378, + "id": 334, "nodeType": "Block", - "src": "4744:36:0", + "src": "3921:36:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 375, + "id": 331, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "4761:4:0", + "referencedDeclaration": 1513, + "src": "3938:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 376, + "id": 332, "isConstant": false, "isLValue": false, "isPure": false, @@ -4769,21 +4173,21 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4761:12:0", + "src": "3938:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 374, - "id": 377, + "functionReturnParameters": 330, + "id": 333, "nodeType": "Return", - "src": "4754:19:0" + "src": "3931:19:0" } ] }, "documentation": null, - "id": 379, + "id": 335, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4791,23 +4195,23 @@ "name": "getBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 371, + "id": 327, "nodeType": "ParameterList", "parameters": [], - "src": "4700:2:0" + "src": "3877:2:0" }, "payable": false, "returnParameters": { - "id": 374, + "id": 330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 373, + "id": 329, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 379, - "src": "4727:15:0", + "scope": 335, + "src": "3904:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4815,10 +4219,10 @@ "typeString": "uint256" }, "typeName": { - "id": 372, + "id": 328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4727:7:0", + "src": "3904:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4828,19 +4232,19 @@ "visibility": "internal" } ], - "src": "4726:17:0" + "src": "3903:17:0" }, - "scope": 1194, - "src": "4681:99:0", + "scope": 1146, + "src": "3858:99:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 401, + "id": 357, "nodeType": "Block", - "src": "4945:94:0", + "src": "4122:94:0", "statements": [ { "expression": { @@ -4851,12 +4255,12 @@ "arguments": [ { "argumentTypes": null, - "id": 393, + "id": 349, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4970:4:0", + "referencedDeclaration": 338, + "src": "4147:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4870,20 +4274,20 @@ "typeString": "string memory" } ], - "id": 392, + "id": 348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4963:6:0", + "src": "4140:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": "string" }, - "id": 394, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -4891,7 +4295,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4963:12:0", + "src": "4140:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -4899,12 +4303,12 @@ }, { "argumentTypes": null, - "id": 395, + "id": 351, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4977:5:0", + "referencedDeclaration": 340, + "src": "4154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4912,12 +4316,12 @@ }, { "argumentTypes": null, - "id": 396, + "id": 352, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "4984:18:0", + "referencedDeclaration": 342, + "src": "4161:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4925,12 +4329,12 @@ }, { "argumentTypes": null, - "id": 397, + "id": 353, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "5004:11:0", + "referencedDeclaration": 344, + "src": "4181:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4938,40 +4342,40 @@ }, { "argumentTypes": null, - "id": 398, + "id": 354, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "5017:14:0", + "referencedDeclaration": 346, + "src": "4194:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 399, + "id": 355, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4962:70:0", + "src": "4139:70:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_string_memory_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(string memory,address,uint256,uint256,uint256)" } }, - "functionReturnParameters": 391, - "id": 400, + "functionReturnParameters": 347, + "id": 356, "nodeType": "Return", - "src": "4955:77:0" + "src": "4132:77:0" } ] }, "documentation": null, - "id": 402, + "id": 358, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4979,23 +4383,23 @@ "name": "getContractInfo", "nodeType": "FunctionDefinition", "parameters": { - "id": 380, + "id": 336, "nodeType": "ParameterList", "parameters": [], - "src": "4814:2:0" + "src": "3991:2:0" }, "payable": false, "returnParameters": { - "id": 391, + "id": 347, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 382, + "id": 338, "name": "name", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4841:11:0", + "scope": 358, + "src": "4018:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5003,10 +4407,10 @@ "typeString": "string" }, "typeName": { - "id": 381, + "id": 337, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4841:6:0", + "src": "4018:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5017,11 +4421,11 @@ }, { "constant": false, - "id": 384, + "id": 340, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4854:13:0", + "scope": 358, + "src": "4031:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5029,10 +4433,10 @@ "typeString": "address" }, "typeName": { - "id": 383, + "id": 339, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4854:7:0", + "src": "4031:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5043,11 +4447,11 @@ }, { "constant": false, - "id": 386, + "id": 342, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4870:26:0", + "scope": 358, + "src": "4047:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5055,10 +4459,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 341, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4870:7:0", + "src": "4047:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5069,11 +4473,11 @@ }, { "constant": false, - "id": 388, + "id": 344, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4899:19:0", + "scope": 358, + "src": "4076:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5081,10 +4485,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 343, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4899:7:0", + "src": "4076:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5095,11 +4499,11 @@ }, { "constant": false, - "id": 390, + "id": 346, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4921:22:0", + "scope": 358, + "src": "4098:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5107,10 +4511,10 @@ "typeString": "uint256" }, "typeName": { - "id": 389, + "id": 345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4921:7:0", + "src": "4098:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5120,47 +4524,47 @@ "visibility": "internal" } ], - "src": "4840:104:0" + "src": "4017:104:0" }, - "scope": 1194, - "src": "4790:249:0", + "scope": 1146, + "src": "3967:249:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 434, + "id": 390, "nodeType": "Block", - "src": "5202:111:0", + "src": "4379:111:0", "statements": [ { "assignments": [ - 419 + 375 ], "declarations": [ { "constant": false, - "id": 419, + "id": 375, "name": "m", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5210:15:0", + "scope": 391, + "src": "4387:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 418, + "id": 374, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5210:6:0", + "referencedDeclaration": 91, + "src": "4387:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -5168,31 +4572,31 @@ "visibility": "internal" } ], - "id": 423, + "id": 379, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 420, + "id": 376, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5228:7:0", + "referencedDeclaration": 73, + "src": "4405:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 422, + "id": 378, "indexExpression": { "argumentTypes": null, - "id": 421, + "id": 377, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5236:8:0", + "referencedDeclaration": 360, + "src": "4413:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5203,14 +4607,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5228:17:0", + "src": "4405:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5210:35:0" + "src": "4387:35:0" }, { "expression": { @@ -5220,26 +4624,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 424, + "id": 380, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5261:1:0", + "referencedDeclaration": 375, + "src": "4438:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 425, + "id": 381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5261:7:0", + "referencedDeclaration": 80, + "src": "4438:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5249,26 +4653,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 426, + "id": 382, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5270:1:0", + "referencedDeclaration": 375, + "src": "4447:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 427, + "id": 383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5270:8:0", + "referencedDeclaration": 82, + "src": "4447:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5278,26 +4682,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 428, + "id": 384, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5280:1:0", + "referencedDeclaration": 375, + "src": "4457:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 429, + "id": 385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5280:11:0", + "referencedDeclaration": 84, + "src": "4457:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5307,54 +4711,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 430, + "id": 386, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5293:1:0", + "referencedDeclaration": 375, + "src": "4470:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 431, + "id": 387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "5293:12:0", + "referencedDeclaration": 86, + "src": "4470:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } } ], - "id": 432, + "id": 388, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5260:46:0", + "src": "4437:46:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$_t_uint256_$_t_string_memory_$", "typeString": "tuple(bool,uint256,uint256,string memory)" } }, - "functionReturnParameters": 417, - "id": 433, + "functionReturnParameters": 373, + "id": 389, "nodeType": "Return", - "src": "5253:53:0" + "src": "4430:53:0" } ] }, "documentation": null, - "id": 435, + "id": 391, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5363,49 +4767,49 @@ "arguments": [ { "argumentTypes": null, - "id": 407, + "id": 363, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5118:8:0", + "referencedDeclaration": 360, + "src": "4295:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 408, + "id": 364, "modifierName": { "argumentTypes": null, - "id": 406, + "id": 362, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5105:12:0", + "referencedDeclaration": 305, + "src": "4282:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "5105:22:0" + "src": "4282:22:0" } ], "name": "returnMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 405, + "id": 361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 404, + "id": 360, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5071:16:0", + "scope": 391, + "src": "4248:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5413,10 +4817,10 @@ "typeString": "address" }, "typeName": { - "id": 403, + "id": 359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5071:7:0", + "src": "4248:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5426,20 +4830,20 @@ "visibility": "internal" } ], - "src": "5070:18:0" + "src": "4247:18:0" }, "payable": false, "returnParameters": { - "id": 417, + "id": 373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 410, + "id": 366, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5136:10:0", + "scope": 391, + "src": "4313:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5447,10 +4851,10 @@ "typeString": "bool" }, "typeName": { - "id": 409, + "id": 365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5136:4:0", + "src": "4313:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5461,11 +4865,11 @@ }, { "constant": false, - "id": 412, + "id": 368, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5148:14:0", + "scope": 391, + "src": "4325:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5473,10 +4877,10 @@ "typeString": "uint256" }, "typeName": { - "id": 411, + "id": 367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5148:7:0", + "src": "4325:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5487,11 +4891,11 @@ }, { "constant": false, - "id": 414, + "id": 370, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5164:17:0", + "scope": 391, + "src": "4341:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5499,10 +4903,10 @@ "typeString": "uint256" }, "typeName": { - "id": 413, + "id": 369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5164:7:0", + "src": "4341:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5513,11 +4917,11 @@ }, { "constant": false, - "id": 416, + "id": 372, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5183:17:0", + "scope": 391, + "src": "4360:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5525,10 +4929,10 @@ "typeString": "string" }, "typeName": { - "id": 415, + "id": 371, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5183:6:0", + "src": "4360:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5538,19 +4942,19 @@ "visibility": "internal" } ], - "src": "5135:66:0" + "src": "4312:66:0" }, - "scope": 1194, - "src": "5049:264:0", + "scope": 1146, + "src": "4226:264:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 451, + "id": 407, "nodeType": "Block", - "src": "5394:200:0", + "src": "4571:61:0", "statements": [ { "expression": { @@ -5561,14 +4965,14 @@ "arguments": [ { "argumentTypes": null, - "id": 447, + "id": 403, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "5442:4:0", + "referencedDeclaration": 1513, + "src": "4619:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } } @@ -5576,24 +4980,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } ], - "id": 446, + "id": 402, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5434:7:0", + "src": "4611:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 448, + "id": 404, "isConstant": false, "isLValue": false, "isPure": false, @@ -5601,7 +5005,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5434:13:0", + "src": "4611:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5620,12 +5024,12 @@ "arguments": [ { "argumentTypes": null, - "id": 443, + "id": 399, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "5417:5:0", + "referencedDeclaration": 393, + "src": "4594:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5639,18 +5043,18 @@ "typeString": "address" } ], - "id": 442, + "id": 398, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "5411:5:0", + "referencedDeclaration": 1213, + "src": "4588:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 444, + "id": 400, "isConstant": false, "isLValue": false, "isPure": false, @@ -5658,27 +5062,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:12:0", + "src": "4588:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 445, + "id": 401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1203, - "src": "5411:22:0", + "referencedDeclaration": 1155, + "src": "4588:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 449, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -5686,21 +5090,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:37:0", + "src": "4588:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 441, - "id": 450, + "functionReturnParameters": 397, + "id": 406, "nodeType": "Return", - "src": "5404:44:0" + "src": "4581:44:0" } ] }, "documentation": null, - "id": 452, + "id": 408, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5708,16 +5112,16 @@ "name": "checkERC20Balance", "nodeType": "FunctionDefinition", "parameters": { - "id": 438, + "id": 394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 437, + "id": 393, "name": "token", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5346:13:0", + "scope": 408, + "src": "4523:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5725,10 +5129,10 @@ "typeString": "address" }, "typeName": { - "id": 436, + "id": 392, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5346:7:0", + "src": "4523:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5738,20 +5142,20 @@ "visibility": "internal" } ], - "src": "5345:15:0" + "src": "4522:15:0" }, "payable": false, "returnParameters": { - "id": 441, + "id": 397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 440, + "id": 396, "name": "", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5385:7:0", + "scope": 408, + "src": "4562:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5759,10 +5163,10 @@ "typeString": "uint256" }, "typeName": { - "id": 439, + "id": 395, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5385:7:0", + "src": "4562:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5772,19 +5176,19 @@ "visibility": "internal" } ], - "src": "5384:9:0" + "src": "4561:9:0" }, - "scope": 1194, - "src": "5319:275:0", + "scope": 1146, + "src": "4496:136:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 521, + "id": 477, "nodeType": "Block", - "src": "5746:399:0", + "src": "4784:399:0", "statements": [ { "condition": { @@ -5793,26 +5197,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 465, + "id": 421, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5817:7:0", + "referencedDeclaration": 73, + "src": "4855:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 467, + "id": 423, "indexExpression": { "argumentTypes": null, - "id": 466, + "id": 422, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "5825:3:0", + "referencedDeclaration": 410, + "src": "4863:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5823,51 +5227,51 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5817:12:0", + "src": "4855:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 468, + "id": 424, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5817:19:0", + "referencedDeclaration": 78, + "src": "4855:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 472, + "id": 428, "nodeType": "IfStatement", - "src": "5813:33:0", + "src": "4851:33:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 469, + "id": 425, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5838:6:0", + "referencedDeclaration": 1505, + "src": "4876:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 470, + "id": 426, "isConstant": false, "isLValue": false, "isPure": false, @@ -5875,15 +5279,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5838:8:0", + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 427, "nodeType": "ExpressionStatement", - "src": "5838:8:0" + "src": "4876:8:0" } }, { @@ -5893,7 +5297,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 478, + "id": 434, "isConstant": false, "isLValue": false, "isPure": false, @@ -5905,12 +5309,12 @@ "arguments": [ { "argumentTypes": null, - "id": 474, + "id": 430, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "5866:10:0", + "referencedDeclaration": 416, + "src": "4904:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -5924,20 +5328,20 @@ "typeString": "string memory" } ], - "id": 473, + "id": 429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5860:5:0", + "src": "4898:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 475, + "id": 431, "isConstant": false, "isLValue": false, "isPure": false, @@ -5945,13 +5349,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5860:17:0", + "src": "4898:17:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 476, + "id": 432, "isConstant": false, "isLValue": false, "isPure": false, @@ -5959,7 +5363,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5860:24:0", + "src": "4898:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5970,14 +5374,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 477, + "id": 433, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5887:2:0", + "src": "4925:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -5985,37 +5389,37 @@ }, "value": "21" }, - "src": "5860:29:0", + "src": "4898:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 482, + "id": 438, "nodeType": "IfStatement", - "src": "5856:43:0", + "src": "4894:43:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 479, + "id": 435, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5891:6:0", + "referencedDeclaration": 1505, + "src": "4929:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 480, + "id": 436, "isConstant": false, "isLValue": false, "isPure": false, @@ -6023,15 +5427,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5891:8:0", + "src": "4929:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 481, + "id": 437, "nodeType": "ExpressionStatement", - "src": "5891:8:0" + "src": "4929:8:0" } }, { @@ -6039,26 +5443,26 @@ "declarations": [ { "constant": false, - "id": 484, + "id": 440, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5910:23:0", + "scope": 478, + "src": "4948:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 483, + "id": 439, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5910:6:0", + "referencedDeclaration": 91, + "src": "4948:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -6066,15 +5470,15 @@ "visibility": "internal" } ], - "id": 485, + "id": 441, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "5910:23:0" + "src": "4948:23:0" }, { "expression": { "argumentTypes": null, - "id": 490, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -6083,26 +5487,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 486, + "id": 442, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5943:9:0", + "referencedDeclaration": 440, + "src": "4981:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 488, + "id": 444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5943:16:0", + "referencedDeclaration": 78, + "src": "4981:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6113,14 +5517,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 489, + "id": 445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5962:4:0", + "src": "5000:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6128,20 +5532,20 @@ }, "value": "true" }, - "src": "5943:23:0", + "src": "4981:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 491, + "id": 447, "nodeType": "ExpressionStatement", - "src": "5943:23:0" + "src": "4981:23:0" }, { "expression": { "argumentTypes": null, - "id": 496, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -6150,26 +5554,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 492, + "id": 448, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5976:9:0", + "referencedDeclaration": 440, + "src": "5014:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 494, + "id": 450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5976:15:0", + "referencedDeclaration": 80, + "src": "5014:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6179,31 +5583,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 495, + "id": 451, "name": "admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "5994:5:0", + "referencedDeclaration": 414, + "src": "5032:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5976:23:0", + "src": "5014:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 497, + "id": 453, "nodeType": "ExpressionStatement", - "src": "5976:23:0" + "src": "5014:23:0" }, { "expression": { "argumentTypes": null, - "id": 502, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, @@ -6212,26 +5616,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 498, + "id": 454, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6009:9:0", + "referencedDeclaration": 440, + "src": "5047:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 500, + "id": 456, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6009:20:0", + "referencedDeclaration": 86, + "src": "5047:20:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -6241,31 +5645,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 501, + "id": 457, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6032:10:0", + "referencedDeclaration": 416, + "src": "5070:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6009:33:0", + "src": "5047:33:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, - "id": 503, + "id": 459, "nodeType": "ExpressionStatement", - "src": "6009:33:0" + "src": "5047:33:0" }, { "expression": { "argumentTypes": null, - "id": 508, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -6274,26 +5678,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 504, + "id": 460, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6053:7:0", + "referencedDeclaration": 73, + "src": "5091:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 506, + "id": 462, "indexExpression": { "argumentTypes": null, - "id": 505, + "id": 461, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6061:3:0", + "referencedDeclaration": 410, + "src": "5099:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6304,9 +5708,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6053:12:0", + "src": "5091:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -6314,26 +5718,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 507, + "id": 463, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6068:9:0", + "referencedDeclaration": 440, + "src": "5106:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "6053:24:0", + "src": "5091:24:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 509, + "id": 465, "nodeType": "ExpressionStatement", - "src": "6053:24:0" + "src": "5091:24:0" }, { "expression": { @@ -6341,12 +5745,12 @@ "arguments": [ { "argumentTypes": null, - "id": 513, + "id": 469, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6103:3:0", + "referencedDeclaration": 410, + "src": "5141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6362,18 +5766,18 @@ ], "expression": { "argumentTypes": null, - "id": 510, + "id": 466, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "6087:10:0", + "referencedDeclaration": 76, + "src": "5125:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 512, + "id": 468, "isConstant": false, "isLValue": false, "isPure": false, @@ -6381,13 +5785,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6087:15:0", + "src": "5125:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 514, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, @@ -6395,15 +5799,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:20:0", + "src": "5125:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 515, + "id": 471, "nodeType": "ExpressionStatement", - "src": "6087:20:0" + "src": "5125:20:0" }, { "expression": { @@ -6411,12 +5815,12 @@ "arguments": [ { "argumentTypes": null, - "id": 517, + "id": 473, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6126:3:0", + "referencedDeclaration": 410, + "src": "5164:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6424,12 +5828,12 @@ }, { "argumentTypes": null, - "id": 518, + "id": 474, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "6131:6:0", + "referencedDeclaration": 412, + "src": "5169:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6447,18 +5851,18 @@ "typeString": "uint256" } ], - "id": 516, + "id": 472, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "6117:8:0", + "referencedDeclaration": 770, + "src": "5155:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 519, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -6466,57 +5870,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:21:0", + "src": "5155:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6117:21:0" + "src": "5155:21:0" } ] }, "documentation": null, - "id": 522, + "id": 478, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 463, + "id": 419, "modifierName": { "argumentTypes": null, - "id": 462, + "id": 418, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "5734:9:0", + "referencedDeclaration": 290, + "src": "4772:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "5734:11:0" + "src": "4772:11:0" } ], "name": "addMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 454, + "id": 410, "name": "who", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5667:11:0", + "scope": 478, + "src": "4705:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6524,10 +5928,10 @@ "typeString": "address" }, "typeName": { - "id": 453, + "id": 409, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5667:7:0", + "src": "4705:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6538,11 +5942,11 @@ }, { "constant": false, - "id": 456, + "id": 412, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5680:14:0", + "scope": 478, + "src": "4718:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6550,10 +5954,10 @@ "typeString": "uint256" }, "typeName": { - "id": 455, + "id": 411, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5680:7:0", + "src": "4718:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6564,11 +5968,11 @@ }, { "constant": false, - "id": 458, + "id": 414, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5696:10:0", + "scope": 478, + "src": "4734:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6576,10 +5980,10 @@ "typeString": "bool" }, "typeName": { - "id": 457, + "id": 413, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5696:4:0", + "src": "4734:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6590,11 +5994,11 @@ }, { "constant": false, - "id": 460, + "id": 416, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5708:17:0", + "scope": 478, + "src": "4746:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6602,10 +6006,10 @@ "typeString": "string" }, "typeName": { - "id": 459, + "id": 415, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5708:6:0", + "src": "4746:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6615,26 +6019,26 @@ "visibility": "internal" } ], - "src": "5666:60:0" + "src": "4704:60:0" }, "payable": false, "returnParameters": { - "id": 464, + "id": 420, "nodeType": "ParameterList", "parameters": [], - "src": "5746:0:0" + "src": "4784:0:0" }, - "scope": 1194, - "src": "5648:497:0", + "scope": 1146, + "src": "4686:497:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 575, + "id": 531, "nodeType": "Block", - "src": "6248:244:0", + "src": "5286:244:0", "statements": [ { "condition": { @@ -6643,7 +6047,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 544, + "id": 500, "isConstant": false, "isLValue": false, "isPure": false, @@ -6657,26 +6061,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 536, + "id": 492, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6267:7:0", + "referencedDeclaration": 73, + "src": "5305:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 538, + "id": 494, "indexExpression": { "argumentTypes": null, - "id": 537, + "id": 493, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6275:3:0", + "referencedDeclaration": 480, + "src": "5313:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6687,21 +6091,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6267:12:0", + "src": "5305:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 539, + "id": 495, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6267:23:0", + "referencedDeclaration": 86, + "src": "5305:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -6715,18 +6119,18 @@ "typeString": "string storage ref" } ], - "id": 535, + "id": 491, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6262:4:0", + "referencedDeclaration": 1510, + "src": "5300:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 540, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -6734,7 +6138,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6262:29:0", + "src": "5300:29:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6747,12 +6151,12 @@ "arguments": [ { "argumentTypes": null, - "id": 542, + "id": 498, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6300:4:0", + "referencedDeclaration": 486, + "src": "5338:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6766,18 +6170,18 @@ "typeString": "string memory" } ], - "id": 541, + "id": 497, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6295:4:0", + "referencedDeclaration": 1510, + "src": "5333:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 543, + "id": 499, "isConstant": false, "isLValue": false, "isPure": false, @@ -6785,34 +6189,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6295:10:0", + "src": "5333:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6262:43:0", + "src": "5300:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 550, + "id": 506, "nodeType": "IfStatement", - "src": "6258:76:0", + "src": "5296:76:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 502, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6324:3:0", + "referencedDeclaration": 480, + "src": "5362:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6820,12 +6224,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 503, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6329:4:0", + "referencedDeclaration": 486, + "src": "5367:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6843,18 +6247,18 @@ "typeString": "string memory" } ], - "id": 545, + "id": 501, "name": "changeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6307:16:0", + "referencedDeclaration": 589, + "src": "5345:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory)" } }, - "id": 548, + "id": 504, "isConstant": false, "isLValue": false, "isPure": false, @@ -6862,15 +6266,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6307:27:0", + "src": "5345:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 549, + "id": 505, "nodeType": "ExpressionStatement", - "src": "6307:27:0" + "src": "5345:27:0" } }, { @@ -6880,7 +6284,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 556, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, @@ -6891,26 +6295,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 551, + "id": 507, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6348:7:0", + "referencedDeclaration": 73, + "src": "5386:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 553, + "id": 509, "indexExpression": { "argumentTypes": null, - "id": 552, + "id": 508, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6356:3:0", + "referencedDeclaration": 480, + "src": "5394:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6921,21 +6325,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6348:12:0", + "src": "5386:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 554, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6348:18:0", + "referencedDeclaration": 80, + "src": "5386:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6945,39 +6349,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 555, + "id": 511, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6370:7:0", + "referencedDeclaration": 484, + "src": "5408:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6348:29:0", + "src": "5386:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 562, + "id": 518, "nodeType": "IfStatement", - "src": "6344:69:0", + "src": "5382:69:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 558, + "id": 514, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6400:3:0", + "referencedDeclaration": 480, + "src": "5438:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6985,12 +6389,12 @@ }, { "argumentTypes": null, - "id": 559, + "id": 515, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6405:7:0", + "referencedDeclaration": 484, + "src": "5443:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7008,18 +6412,18 @@ "typeString": "bool" } ], - "id": 557, + "id": 513, "name": "changeAdminPrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "6379:20:0", + "referencedDeclaration": 615, + "src": "5417:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,bool)" } }, - "id": 560, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, @@ -7027,15 +6431,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6379:34:0", + "src": "5417:34:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 561, + "id": 517, "nodeType": "ExpressionStatement", - "src": "6379:34:0" + "src": "5417:34:0" } }, { @@ -7045,7 +6449,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 568, + "id": 524, "isConstant": false, "isLValue": false, "isPure": false, @@ -7056,26 +6460,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 563, + "id": 519, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6427:7:0", + "referencedDeclaration": 73, + "src": "5465:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 565, + "id": 521, "indexExpression": { "argumentTypes": null, - "id": 564, + "id": 520, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6435:3:0", + "referencedDeclaration": 480, + "src": "5473:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7086,21 +6490,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6427:12:0", + "src": "5465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 566, + "id": 522, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6427:19:0", + "referencedDeclaration": 82, + "src": "5465:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7110,39 +6514,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 567, + "id": 523, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6450:6:0", + "referencedDeclaration": 482, + "src": "5488:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6427:29:0", + "src": "5465:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 574, + "id": 530, "nodeType": "IfStatement", - "src": "6423:62:0", + "src": "5461:62:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 570, + "id": 526, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6473:3:0", + "referencedDeclaration": 480, + "src": "5511:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7150,12 +6554,12 @@ }, { "argumentTypes": null, - "id": 571, + "id": 527, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6478:6:0", + "referencedDeclaration": 482, + "src": "5516:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7173,18 +6577,18 @@ "typeString": "uint256" } ], - "id": 569, + "id": 525, "name": "allocateShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 772, - "src": "6458:14:0", + "referencedDeclaration": 728, + "src": "5496:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 572, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -7192,58 +6596,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6458:27:0", + "src": "5496:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 573, + "id": 529, "nodeType": "ExpressionStatement", - "src": "6458:27:0" + "src": "5496:27:0" } } ] }, "documentation": null, - "id": 576, + "id": 532, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 533, + "id": 489, "modifierName": { "argumentTypes": null, - "id": 532, + "id": 488, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6236:9:0", + "referencedDeclaration": 290, + "src": "5274:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6236:11:0" + "src": "5274:11:0" } ], "name": "updateMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 524, + "id": 480, "name": "who", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6173:11:0", + "scope": 532, + "src": "5211:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7251,10 +6655,10 @@ "typeString": "address" }, "typeName": { - "id": 523, + "id": 479, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6173:7:0", + "src": "5211:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7265,11 +6669,11 @@ }, { "constant": false, - "id": 526, + "id": 482, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6186:14:0", + "scope": 532, + "src": "5224:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7277,10 +6681,10 @@ "typeString": "uint256" }, "typeName": { - "id": 525, + "id": 481, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6186:7:0", + "src": "5224:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7291,11 +6695,11 @@ }, { "constant": false, - "id": 528, + "id": 484, "name": "isAdmin", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6202:12:0", + "scope": 532, + "src": "5240:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7303,10 +6707,10 @@ "typeString": "bool" }, "typeName": { - "id": 527, + "id": 483, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6202:4:0", + "src": "5240:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7317,11 +6721,11 @@ }, { "constant": false, - "id": 530, + "id": 486, "name": "name", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6216:11:0", + "scope": 532, + "src": "5254:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7329,10 +6733,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 485, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6216:6:0", + "src": "5254:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7342,26 +6746,26 @@ "visibility": "internal" } ], - "src": "6172:56:0" + "src": "5210:56:0" }, "payable": false, "returnParameters": { - "id": 534, + "id": 490, "nodeType": "ParameterList", "parameters": [], - "src": "6248:0:0" + "src": "5286:0:0" }, - "scope": 1194, - "src": "6151:341:0", + "scope": 1146, + "src": "5189:341:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 632, + "id": 588, "nodeType": "Block", - "src": "6638:259:0", + "src": "5676:259:0", "statements": [ { "condition": { @@ -7370,7 +6774,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 601, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, @@ -7381,7 +6785,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 594, + "id": 550, "isConstant": false, "isLValue": false, "isPure": false, @@ -7392,7 +6796,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 589, + "id": 545, "isConstant": false, "isLValue": false, "isPure": false, @@ -7401,18 +6805,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 586, + "id": 542, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6652:3:0", + "referencedDeclaration": 1500, + "src": "5690:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 587, + "id": 543, "isConstant": false, "isLValue": false, "isPure": false, @@ -7420,7 +6824,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6652:10:0", + "src": "5690:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7430,18 +6834,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 588, + "id": 544, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6666:3:0", + "referencedDeclaration": 534, + "src": "5704:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6652:17:0", + "src": "5690:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7455,7 +6859,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 593, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -7464,18 +6868,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 590, + "id": 546, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6673:3:0", + "referencedDeclaration": 1500, + "src": "5711:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 591, + "id": 547, "isConstant": false, "isLValue": false, "isPure": false, @@ -7483,7 +6887,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6673:10:0", + "src": "5711:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7493,24 +6897,24 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 592, + "id": 548, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "6687:5:0", + "referencedDeclaration": 5, + "src": "5725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6673:19:0", + "src": "5711:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6652:40:0", + "src": "5690:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7520,7 +6924,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 600, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, @@ -7528,41 +6932,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6696:26:0", + "src": "5734:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 595, + "id": 551, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6697:7:0", + "referencedDeclaration": 73, + "src": "5735:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 598, + "id": 554, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 596, + "id": 552, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6705:3:0", + "referencedDeclaration": 1500, + "src": "5743:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 597, + "id": 553, "isConstant": false, "isLValue": false, "isPure": false, @@ -7570,7 +6974,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6705:10:0", + "src": "5743:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7581,21 +6985,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6697:19:0", + "src": "5735:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 599, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6697:25:0", + "referencedDeclaration": 80, + "src": "5735:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7606,37 +7010,37 @@ "typeString": "bool" } }, - "src": "6652:70:0", + "src": "5690:70:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 605, + "id": 561, "nodeType": "IfStatement", - "src": "6648:84:0", + "src": "5686:84:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 602, + "id": 558, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6724:6:0", + "referencedDeclaration": 1505, + "src": "5762:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 603, + "id": 559, "isConstant": false, "isLValue": false, "isPure": false, @@ -7644,15 +7048,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6724:8:0", + "src": "5762:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 604, + "id": 560, "nodeType": "ExpressionStatement", - "src": "6724:8:0" + "src": "5762:8:0" } }, { @@ -7662,7 +7066,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 611, + "id": 567, "isConstant": false, "isLValue": false, "isPure": false, @@ -7674,12 +7078,12 @@ "arguments": [ { "argumentTypes": null, - "id": 607, + "id": 563, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6752:7:0", + "referencedDeclaration": 536, + "src": "5790:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7693,20 +7097,20 @@ "typeString": "string memory" } ], - "id": 606, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6746:5:0", + "src": "5784:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 608, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, @@ -7714,13 +7118,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6746:14:0", + "src": "5784:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 609, + "id": 565, "isConstant": false, "isLValue": false, "isPure": false, @@ -7728,7 +7132,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6746:21:0", + "src": "5784:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7739,14 +7143,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 610, + "id": 566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6770:2:0", + "src": "5808:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -7754,37 +7158,37 @@ }, "value": "21" }, - "src": "6746:26:0", + "src": "5784:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 615, + "id": 571, "nodeType": "IfStatement", - "src": "6742:40:0", + "src": "5780:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 612, + "id": 568, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6774:6:0", + "referencedDeclaration": 1505, + "src": "5812:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 613, + "id": 569, "isConstant": false, "isLValue": false, "isPure": false, @@ -7792,15 +7196,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6774:8:0", + "src": "5812:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 614, + "id": 570, "nodeType": "ExpressionStatement", - "src": "6774:8:0" + "src": "5812:8:0" } }, { @@ -7809,12 +7213,12 @@ "arguments": [ { "argumentTypes": null, - "id": 617, + "id": 573, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6809:3:0", + "referencedDeclaration": 534, + "src": "5847:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7826,26 +7230,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 618, + "id": 574, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6814:7:0", + "referencedDeclaration": 73, + "src": "5852:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 620, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 619, + "id": 575, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6822:3:0", + "referencedDeclaration": 534, + "src": "5860:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7856,21 +7260,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6814:12:0", + "src": "5852:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 621, + "id": 577, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6814:23:0", + "referencedDeclaration": 86, + "src": "5852:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7878,12 +7282,12 @@ }, { "argumentTypes": null, - "id": 622, + "id": 578, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6839:7:0", + "referencedDeclaration": 536, + "src": "5877:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7905,18 +7309,18 @@ "typeString": "string memory" } ], - "id": 616, + "id": 572, "name": "ChangeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "6792:16:0", + "referencedDeclaration": 242, + "src": "5830:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 623, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, @@ -7924,20 +7328,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6792:55:0", + "src": "5830:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 624, + "id": 580, "nodeType": "ExpressionStatement", - "src": "6792:55:0" + "src": "5830:55:0" }, { "expression": { "argumentTypes": null, - "id": 630, + "id": 586, "isConstant": false, "isLValue": false, "isPure": false, @@ -7948,26 +7352,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 625, + "id": 581, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6857:7:0", + "referencedDeclaration": 73, + "src": "5895:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 627, + "id": 583, "indexExpression": { "argumentTypes": null, - "id": 626, + "id": 582, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6865:3:0", + "referencedDeclaration": 534, + "src": "5903:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7978,21 +7382,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6857:12:0", + "src": "5895:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 628, + "id": 584, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6857:23:0", + "referencedDeclaration": 86, + "src": "5895:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8002,31 +7406,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 629, + "id": 585, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6883:7:0", + "referencedDeclaration": 536, + "src": "5921:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6857:33:0", + "src": "5895:33:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 631, + "id": 587, "nodeType": "ExpressionStatement", - "src": "6857:33:0" + "src": "5895:33:0" } ] }, "documentation": null, - "id": 633, + "id": 589, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -8035,49 +7439,49 @@ "arguments": [ { "argumentTypes": null, - "id": 583, + "id": 539, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6633:3:0", + "referencedDeclaration": 534, + "src": "5671:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 584, + "id": 540, "modifierName": { "argumentTypes": null, - "id": 582, + "id": 538, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "6620:12:0", + "referencedDeclaration": 305, + "src": "5658:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6620:17:0" + "src": "5658:17:0" } ], "name": "changeMemberName", "nodeType": "FunctionDefinition", "parameters": { - "id": 581, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 578, + "id": 534, "name": "who", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6584:11:0", + "scope": 589, + "src": "5622:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8085,10 +7489,10 @@ "typeString": "address" }, "typeName": { - "id": 577, + "id": 533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6584:7:0", + "src": "5622:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8099,11 +7503,11 @@ }, { "constant": false, - "id": 580, + "id": 536, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6597:14:0", + "scope": 589, + "src": "5635:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8111,10 +7515,10 @@ "typeString": "string" }, "typeName": { - "id": 579, + "id": 535, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6597:6:0", + "src": "5635:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8124,26 +7528,26 @@ "visibility": "internal" } ], - "src": "6583:29:0" + "src": "5621:29:0" }, "payable": false, "returnParameters": { - "id": 585, + "id": 541, "nodeType": "ParameterList", "parameters": [], - "src": "6638:0:0" + "src": "5676:0:0" }, - "scope": 1194, - "src": "6558:339:0", + "scope": 1146, + "src": "5596:339:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 658, + "id": 614, "nodeType": "Block", - "src": "6980:107:0", + "src": "6018:107:0", "statements": [ { "expression": { @@ -8151,12 +7555,12 @@ "arguments": [ { "argumentTypes": null, - "id": 643, + "id": 599, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7006:3:0", + "referencedDeclaration": 591, + "src": "6044:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8168,26 +7572,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 644, + "id": 600, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7011:7:0", + "referencedDeclaration": 73, + "src": "6049:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 646, + "id": 602, "indexExpression": { "argumentTypes": null, - "id": 645, + "id": 601, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7019:3:0", + "referencedDeclaration": 591, + "src": "6057:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8198,21 +7602,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7011:12:0", + "src": "6049:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 647, + "id": 603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7011:18:0", + "referencedDeclaration": 80, + "src": "6049:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8220,12 +7624,12 @@ }, { "argumentTypes": null, - "id": 648, + "id": 604, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7031:8:0", + "referencedDeclaration": 593, + "src": "6069:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8247,18 +7651,18 @@ "typeString": "bool" } ], - "id": 642, + "id": 598, "name": "ChangePrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 272, - "src": "6990:15:0", + "referencedDeclaration": 228, + "src": "6028:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,bool,bool)" } }, - "id": 649, + "id": 605, "isConstant": false, "isLValue": false, "isPure": false, @@ -8266,20 +7670,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6990:50:0", + "src": "6028:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 650, + "id": 606, "nodeType": "ExpressionStatement", - "src": "6990:50:0" + "src": "6028:50:0" }, { "expression": { "argumentTypes": null, - "id": 656, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, @@ -8290,26 +7694,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 651, + "id": 607, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7050:7:0", + "referencedDeclaration": 73, + "src": "6088:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 653, + "id": 609, "indexExpression": { "argumentTypes": null, - "id": 652, + "id": 608, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7058:3:0", + "referencedDeclaration": 591, + "src": "6096:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8320,21 +7724,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7050:12:0", + "src": "6088:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 654, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7050:18:0", + "referencedDeclaration": 80, + "src": "6088:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8344,68 +7748,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 655, + "id": 611, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7071:8:0", + "referencedDeclaration": 593, + "src": "6109:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7050:29:0", + "src": "6088:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 657, + "id": 613, "nodeType": "ExpressionStatement", - "src": "7050:29:0" + "src": "6088:29:0" } ] }, "documentation": null, - "id": 659, + "id": 615, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 640, + "id": 596, "modifierName": { "argumentTypes": null, - "id": 639, + "id": 595, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6968:9:0", + "referencedDeclaration": 290, + "src": "6006:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6968:11:0" + "src": "6006:11:0" } ], "name": "changeAdminPrivilege", "nodeType": "FunctionDefinition", "parameters": { - "id": 638, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 635, + "id": 591, "name": "who", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6933:11:0", + "scope": 615, + "src": "5971:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8413,10 +7817,10 @@ "typeString": "address" }, "typeName": { - "id": 634, + "id": 590, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6933:7:0", + "src": "5971:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8427,11 +7831,11 @@ }, { "constant": false, - "id": 637, + "id": 593, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6946:13:0", + "scope": 615, + "src": "5984:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8439,10 +7843,10 @@ "typeString": "bool" }, "typeName": { - "id": 636, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6946:4:0", + "src": "5984:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8452,26 +7856,26 @@ "visibility": "internal" } ], - "src": "6932:28:0" + "src": "5970:28:0" }, "payable": false, "returnParameters": { - "id": 641, + "id": 597, "nodeType": "ParameterList", "parameters": [], - "src": "6980:0:0" + "src": "6018:0:0" }, - "scope": 1194, - "src": "6903:184:0", + "scope": 1146, + "src": "5941:184:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 685, + "id": 641, "nodeType": "Block", - "src": "7215:124:0", + "src": "6253:124:0", "statements": [ { "condition": { @@ -8480,7 +7884,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 671, + "id": 627, "isConstant": false, "isLValue": false, "isPure": false, @@ -8492,12 +7896,12 @@ "arguments": [ { "argumentTypes": null, - "id": 667, + "id": 623, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7235:7:0", + "referencedDeclaration": 617, + "src": "6273:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8511,20 +7915,20 @@ "typeString": "string memory" } ], - "id": 666, + "id": 622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7229:5:0", + "src": "6267:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 668, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -8532,13 +7936,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7229:14:0", + "src": "6267:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 669, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -8546,7 +7950,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7229:21:0", + "src": "6267:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8557,14 +7961,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 670, + "id": 626, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7253:2:0", + "src": "6291:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -8572,37 +7976,37 @@ }, "value": "21" }, - "src": "7229:26:0", + "src": "6267:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 675, + "id": 631, "nodeType": "IfStatement", - "src": "7225:40:0", + "src": "6263:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 672, + "id": 628, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7257:6:0", + "referencedDeclaration": 1505, + "src": "6295:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 673, + "id": 629, "isConstant": false, "isLValue": false, "isPure": false, @@ -8610,15 +8014,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7257:8:0", + "src": "6295:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 674, + "id": 630, "nodeType": "ExpressionStatement", - "src": "7257:8:0" + "src": "6295:8:0" } }, { @@ -8627,12 +8031,12 @@ "arguments": [ { "argumentTypes": null, - "id": 677, + "id": 633, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7294:4:0", + "referencedDeclaration": 56, + "src": "6332:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8640,12 +8044,12 @@ }, { "argumentTypes": null, - "id": 678, + "id": 634, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7300:7:0", + "referencedDeclaration": 617, + "src": "6338:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8663,18 +8067,18 @@ "typeString": "string memory" } ], - "id": 676, + "id": 632, "name": "ChangeContractName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 278, - "src": "7275:18:0", + "referencedDeclaration": 234, + "src": "6313:18:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, - "id": 679, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, @@ -8682,32 +8086,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7275:33:0", + "src": "6313:33:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 680, + "id": 636, "nodeType": "ExpressionStatement", - "src": "7275:33:0" + "src": "6313:33:0" }, { "expression": { "argumentTypes": null, - "id": 683, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 681, + "id": 637, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7318:4:0", + "referencedDeclaration": 56, + "src": "6356:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8717,68 +8121,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 682, + "id": 638, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7325:7:0", + "referencedDeclaration": 617, + "src": "6363:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "7318:14:0", + "src": "6356:14:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 684, + "id": 640, "nodeType": "ExpressionStatement", - "src": "7318:14:0" + "src": "6356:14:0" } ] }, "documentation": null, - "id": 686, + "id": 642, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 664, + "id": 620, "modifierName": { "argumentTypes": null, - "id": 663, + "id": 619, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "7203:9:0", + "referencedDeclaration": 290, + "src": "6241:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7203:11:0" + "src": "6241:11:0" } ], "name": "changeContractName", "nodeType": "FunctionDefinition", "parameters": { - "id": 662, + "id": 618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 661, + "id": 617, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 686, - "src": "7180:14:0", + "scope": 642, + "src": "6218:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8786,10 +8190,10 @@ "typeString": "string" }, "typeName": { - "id": 660, + "id": 616, "name": "string", "nodeType": "ElementaryTypeName", - "src": "7180:6:0", + "src": "6218:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8799,26 +8203,26 @@ "visibility": "internal" } ], - "src": "7179:16:0" + "src": "6217:16:0" }, "payable": false, "returnParameters": { - "id": 665, + "id": 621, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:0" + "src": "6253:0:0" }, - "scope": 1194, - "src": "7152:187:0", + "scope": 1146, + "src": "6190:187:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 722, + "id": 678, "nodeType": "Block", - "src": "7653:262:0", + "src": "6691:262:0", "statements": [ { "condition": { @@ -8827,19 +8231,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 695, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 693, + "id": 649, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7667:13:0", + "referencedDeclaration": 644, + "src": "6705:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8849,48 +8253,48 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 694, + "id": 650, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7683:22:0", + "referencedDeclaration": 69, + "src": "6721:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7667:38:0", + "src": "6705:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 699, + "id": 655, "nodeType": "IfStatement", - "src": "7663:52:0", + "src": "6701:52:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 696, + "id": 652, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7707:6:0", + "referencedDeclaration": 1505, + "src": "6745:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 697, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -8898,15 +8302,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7707:8:0", + "src": "6745:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 698, + "id": 654, "nodeType": "ExpressionStatement", - "src": "7707:8:0" + "src": "6745:8:0" } }, { @@ -8916,7 +8320,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 706, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, @@ -8926,12 +8330,12 @@ "arguments": [ { "argumentTypes": null, - "id": 702, + "id": 658, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7747:22:0", + "referencedDeclaration": 69, + "src": "6785:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8947,32 +8351,32 @@ ], "expression": { "argumentTypes": null, - "id": 700, + "id": 656, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7729:13:0", + "referencedDeclaration": 644, + "src": "6767:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 701, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "7729:17:0", + "referencedDeclaration": 1281, + "src": "6767:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 703, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, @@ -8980,7 +8384,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7729:41:0", + "src": "6767:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8992,18 +8396,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 704, + "id": 660, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7773:4:0", + "referencedDeclaration": 1513, + "src": "6811:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 705, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -9011,43 +8415,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7773:12:0", + "src": "6811:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7729:56:0", + "src": "6767:56:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 710, + "id": 666, "nodeType": "IfStatement", - "src": "7725:70:0", + "src": "6763:70:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 707, + "id": 663, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7787:6:0", + "referencedDeclaration": 1505, + "src": "6825:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 708, + "id": 664, "isConstant": false, "isLValue": false, "isPure": false, @@ -9055,15 +8459,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7787:8:0", + "src": "6825:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 709, + "id": 665, "nodeType": "ExpressionStatement", - "src": "7787:8:0" + "src": "6825:8:0" } }, { @@ -9074,18 +8478,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 712, + "id": 668, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7826:4:0", + "referencedDeclaration": 1513, + "src": "6864:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 713, + "id": 669, "isConstant": false, "isLValue": false, "isPure": false, @@ -9093,7 +8497,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7826:12:0", + "src": "6864:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9101,12 +8505,12 @@ }, { "argumentTypes": null, - "id": 714, + "id": 670, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7840:13:0", + "referencedDeclaration": 67, + "src": "6878:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9114,12 +8518,12 @@ }, { "argumentTypes": null, - "id": 715, + "id": 671, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7855:13:0", + "referencedDeclaration": 644, + "src": "6893:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9141,18 +8545,18 @@ "typeString": "uint256" } ], - "id": 711, + "id": 667, "name": "ChangeSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 294, - "src": "7806:19:0", + "referencedDeclaration": 250, + "src": "6844:19:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 716, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -9160,32 +8564,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7806:63:0", + "src": "6844:63:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 717, + "id": 673, "nodeType": "ExpressionStatement", - "src": "7806:63:0" + "src": "6844:63:0" }, { "expression": { "argumentTypes": null, - "id": 720, + "id": 676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 718, + "id": 674, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7879:13:0", + "referencedDeclaration": 67, + "src": "6917:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9195,68 +8599,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 719, + "id": 675, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7895:13:0", + "referencedDeclaration": 644, + "src": "6933:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7879:29:0", + "src": "6917:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 721, + "id": 677, "nodeType": "ExpressionStatement", - "src": "7879:29:0" + "src": "6917:29:0" } ] }, "documentation": null, - "id": 723, + "id": 679, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 691, + "id": 647, "modifierName": { "argumentTypes": null, - "id": 690, + "id": 646, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "7641:9:0", + "referencedDeclaration": 30, + "src": "6679:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7641:11:0" + "src": "6679:11:0" } ], "name": "changeSharedExpenseAllocation", "nodeType": "FunctionDefinition", "parameters": { - "id": 689, + "id": 645, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 688, + "id": 644, "name": "newAllocation", "nodeType": "VariableDeclaration", - "scope": 723, - "src": "7611:21:0", + "scope": 679, + "src": "6649:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9264,10 +8668,10 @@ "typeString": "uint256" }, "typeName": { - "id": 687, + "id": 643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7611:7:0", + "src": "6649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9277,39 +8681,39 @@ "visibility": "internal" } ], - "src": "7610:23:0" + "src": "6648:23:0" }, "payable": false, "returnParameters": { - "id": 692, + "id": 648, "nodeType": "ParameterList", "parameters": [], - "src": "7653:0:0" + "src": "6691:0:0" }, - "scope": 1194, - "src": "7572:343:0", + "scope": 1146, + "src": "6610:343:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 771, + "id": 727, "nodeType": "Block", - "src": "8108:283:0", + "src": "7146:283:0", "statements": [ { "assignments": [ - 736 + 692 ], "declarations": [ { "constant": false, - "id": 736, + "id": 692, "name": "currentShares", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8118:21:0", + "scope": 728, + "src": "7156:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9317,10 +8721,10 @@ "typeString": "uint256" }, "typeName": { - "id": 735, + "id": 691, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8118:7:0", + "src": "7156:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9330,33 +8734,33 @@ "visibility": "internal" } ], - "id": 741, + "id": 697, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 737, + "id": 693, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8142:7:0", + "referencedDeclaration": 73, + "src": "7180:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 739, + "id": 695, "indexExpression": { "argumentTypes": null, - "id": 738, + "id": 694, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8150:3:0", + "referencedDeclaration": 681, + "src": "7188:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9367,28 +8771,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8142:12:0", + "src": "7180:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 740, + "id": 696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8142:19:0", + "referencedDeclaration": 82, + "src": "7180:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8118:43:0" + "src": "7156:43:0" }, { "condition": { @@ -9397,19 +8801,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 744, + "id": 700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 742, + "id": 698, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8175:6:0", + "referencedDeclaration": 683, + "src": "7213:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9419,48 +8823,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 743, + "id": 699, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8185:13:0", + "referencedDeclaration": 692, + "src": "7223:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8175:23:0", + "src": "7213:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 748, + "id": 704, "nodeType": "IfStatement", - "src": "8171:37:0", + "src": "7209:37:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 745, + "id": 701, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "8200:6:0", + "referencedDeclaration": 1505, + "src": "7238:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 746, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -9468,15 +8872,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8200:8:0", + "src": "7238:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 747, + "id": 703, "nodeType": "ExpressionStatement", - "src": "8200:8:0" + "src": "7238:8:0" } }, { @@ -9486,19 +8890,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 751, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 705, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8222:6:0", + "referencedDeclaration": 683, + "src": "7260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9508,27 +8912,27 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 750, + "id": 706, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8231:13:0", + "referencedDeclaration": 692, + "src": "7269:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8222:22:0", + "src": "7260:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 769, + "id": 725, "nodeType": "Block", - "src": "8317:68:0", + "src": "7355:68:0", "statements": [ { "expression": { @@ -9536,12 +8940,12 @@ "arguments": [ { "argumentTypes": null, - "id": 762, + "id": 718, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8343:3:0", + "referencedDeclaration": 681, + "src": "7381:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9552,12 +8956,12 @@ "arguments": [ { "argumentTypes": null, - "id": 765, + "id": 721, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8366:6:0", + "referencedDeclaration": 683, + "src": "7404:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9573,32 +8977,32 @@ ], "expression": { "argumentTypes": null, - "id": 763, + "id": 719, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8348:13:0", + "referencedDeclaration": 692, + "src": "7386:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 764, + "id": 720, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8348:17:0", + "referencedDeclaration": 1281, + "src": "7386:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 766, + "id": 722, "isConstant": false, "isLValue": false, "isPure": false, @@ -9606,7 +9010,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:25:0", + "src": "7386:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9624,18 +9028,18 @@ "typeString": "uint256" } ], - "id": 761, + "id": 717, "name": "removeShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 856, - "src": "8331:11:0", + "referencedDeclaration": 812, + "src": "7369:11:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 767, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -9643,25 +9047,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8331:43:0", + "src": "7369:43:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 724, "nodeType": "ExpressionStatement", - "src": "8331:43:0" + "src": "7369:43:0" } ] }, - "id": 770, + "id": 726, "nodeType": "IfStatement", - "src": "8218:167:0", + "src": "7256:167:0", "trueBody": { - "id": 760, + "id": 716, "nodeType": "Block", - "src": "8246:65:0", + "src": "7284:65:0", "statements": [ { "expression": { @@ -9669,12 +9073,12 @@ "arguments": [ { "argumentTypes": null, - "id": 753, + "id": 709, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8269:3:0", + "referencedDeclaration": 681, + "src": "7307:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9685,12 +9089,12 @@ "arguments": [ { "argumentTypes": null, - "id": 756, + "id": 712, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8285:13:0", + "referencedDeclaration": 692, + "src": "7323:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9706,32 +9110,32 @@ ], "expression": { "argumentTypes": null, - "id": 754, + "id": 710, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8274:6:0", + "referencedDeclaration": 683, + "src": "7312:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 755, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8274:10:0", + "referencedDeclaration": 1281, + "src": "7312:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 757, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -9739,7 +9143,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8274:25:0", + "src": "7312:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9757,18 +9161,18 @@ "typeString": "uint256" } ], - "id": 752, + "id": 708, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "8260:8:0", + "referencedDeclaration": 770, + "src": "7298:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 758, + "id": 714, "isConstant": false, "isLValue": false, "isPure": false, @@ -9776,15 +9180,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8260:40:0", + "src": "7298:40:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 759, + "id": 715, "nodeType": "ExpressionStatement", - "src": "8260:40:0" + "src": "7298:40:0" } ] } @@ -9792,77 +9196,77 @@ ] }, "documentation": null, - "id": 772, + "id": 728, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 730, + "id": 686, "modifierName": { "argumentTypes": null, - "id": 729, + "id": 685, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8078:9:0", + "referencedDeclaration": 290, + "src": "7116:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8078:11:0" + "src": "7116:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 732, + "id": 688, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8103:3:0", + "referencedDeclaration": 681, + "src": "7141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 733, + "id": 689, "modifierName": { "argumentTypes": null, - "id": 731, + "id": 687, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8090:12:0", + "referencedDeclaration": 305, + "src": "7128:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8090:17:0" + "src": "7128:17:0" } ], "name": "allocateShares", "nodeType": "FunctionDefinition", "parameters": { - "id": 728, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 725, + "id": 681, "name": "who", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8042:11:0", + "scope": 728, + "src": "7080:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9870,10 +9274,10 @@ "typeString": "address" }, "typeName": { - "id": 724, + "id": 680, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8042:7:0", + "src": "7080:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9884,11 +9288,11 @@ }, { "constant": false, - "id": 727, + "id": 683, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8055:14:0", + "scope": 728, + "src": "7093:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9896,10 +9300,10 @@ "typeString": "uint256" }, "typeName": { - "id": 726, + "id": 682, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8055:7:0", + "src": "7093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9909,43 +9313,43 @@ "visibility": "internal" } ], - "src": "8041:29:0" + "src": "7079:29:0" }, "payable": false, "returnParameters": { - "id": 734, + "id": 690, "nodeType": "ParameterList", "parameters": [], - "src": "8108:0:0" + "src": "7146:0:0" }, - "scope": 1194, - "src": "8018:373:0", + "scope": 1146, + "src": "7056:373:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 813, + "id": 769, "nodeType": "Block", - "src": "8532:169:0", + "src": "7570:169:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 789, + "id": 745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 784, + "id": 740, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8542:11:0", + "referencedDeclaration": 58, + "src": "7580:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9958,12 +9362,12 @@ "arguments": [ { "argumentTypes": null, - "id": 787, + "id": 743, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8572:6:0", + "referencedDeclaration": 732, + "src": "7610:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9979,32 +9383,32 @@ ], "expression": { "argumentTypes": null, - "id": 785, + "id": 741, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8556:11:0", + "referencedDeclaration": 58, + "src": "7594:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 786, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8556:15:0", + "referencedDeclaration": 1305, + "src": "7594:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 788, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, @@ -10012,26 +9416,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8556:23:0", + "src": "7594:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8542:37:0", + "src": "7580:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 790, + "id": 746, "nodeType": "ExpressionStatement", - "src": "8542:37:0" + "src": "7580:37:0" }, { "expression": { "argumentTypes": null, - "id": 802, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, @@ -10042,26 +9446,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 791, + "id": 747, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8589:7:0", + "referencedDeclaration": 73, + "src": "7627:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 793, + "id": 749, "indexExpression": { "argumentTypes": null, - "id": 792, + "id": 748, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8597:3:0", + "referencedDeclaration": 730, + "src": "7635:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10072,21 +9476,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8589:12:0", + "src": "7627:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 794, + "id": 750, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8589:19:0", + "referencedDeclaration": 82, + "src": "7627:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10099,12 +9503,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 756, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8635:6:0", + "referencedDeclaration": 732, + "src": "7673:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10124,26 +9528,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 795, + "id": 751, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8611:7:0", + "referencedDeclaration": 73, + "src": "7649:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 797, + "id": 753, "indexExpression": { "argumentTypes": null, - "id": 796, + "id": 752, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8619:3:0", + "referencedDeclaration": 730, + "src": "7657:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10154,41 +9558,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8611:12:0", + "src": "7649:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 798, + "id": 754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8611:19:0", + "referencedDeclaration": 82, + "src": "7649:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 799, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8611:23:0", + "referencedDeclaration": 1305, + "src": "7649:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 801, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -10196,21 +9600,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8611:31:0", + "src": "7649:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8589:53:0", + "src": "7627:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 803, + "id": 759, "nodeType": "ExpressionStatement", - "src": "8589:53:0" + "src": "7627:53:0" }, { "expression": { @@ -10218,12 +9622,12 @@ "arguments": [ { "argumentTypes": null, - "id": 805, + "id": 761, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8661:3:0", + "referencedDeclaration": 730, + "src": "7699:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10231,12 +9635,12 @@ }, { "argumentTypes": null, - "id": 806, + "id": 762, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8666:6:0", + "referencedDeclaration": 732, + "src": "7704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10248,26 +9652,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 807, + "id": 763, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8674:7:0", + "referencedDeclaration": 73, + "src": "7712:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 809, + "id": 765, "indexExpression": { "argumentTypes": null, - "id": 808, + "id": 764, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8682:3:0", + "referencedDeclaration": 730, + "src": "7720:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10278,21 +9682,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8674:12:0", + "src": "7712:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 810, + "id": 766, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8674:19:0", + "referencedDeclaration": 82, + "src": "7712:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10314,18 +9718,18 @@ "typeString": "uint256" } ], - "id": 804, + "id": 760, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "8652:8:0", + "referencedDeclaration": 212, + "src": "7690:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 811, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -10333,90 +9737,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8652:42:0", + "src": "7690:42:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 812, + "id": 768, "nodeType": "ExpressionStatement", - "src": "8652:42:0" + "src": "7690:42:0" } ] }, "documentation": null, - "id": 814, + "id": 770, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 779, + "id": 735, "modifierName": { "argumentTypes": null, - "id": 778, + "id": 734, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8502:9:0", + "referencedDeclaration": 290, + "src": "7540:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8502:11:0" + "src": "7540:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 781, + "id": 737, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8527:3:0", + "referencedDeclaration": 730, + "src": "7565:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 782, + "id": 738, "modifierName": { "argumentTypes": null, - "id": 780, + "id": 736, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8514:12:0", + "referencedDeclaration": 305, + "src": "7552:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8514:17:0" + "src": "7552:17:0" } ], "name": "addShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 777, + "id": 733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 730, "name": "who", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8466:11:0", + "scope": 770, + "src": "7504:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10424,10 +9828,10 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8466:7:0", + "src": "7504:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10438,11 +9842,11 @@ }, { "constant": false, - "id": 776, + "id": 732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8479:14:0", + "scope": 770, + "src": "7517:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10450,10 +9854,10 @@ "typeString": "uint256" }, "typeName": { - "id": 775, + "id": 731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8479:7:0", + "src": "7517:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10463,43 +9867,43 @@ "visibility": "internal" } ], - "src": "8465:29:0" + "src": "7503:29:0" }, "payable": false, "returnParameters": { - "id": 783, + "id": 739, "nodeType": "ParameterList", "parameters": [], - "src": "8532:0:0" + "src": "7570:0:0" }, - "scope": 1194, - "src": "8448:253:0", + "scope": 1146, + "src": "7486:253:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 855, + "id": 811, "nodeType": "Block", - "src": "8845:172:0", + "src": "7883:172:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 831, + "id": 787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 826, + "id": 782, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8855:11:0", + "referencedDeclaration": 58, + "src": "7893:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10512,12 +9916,12 @@ "arguments": [ { "argumentTypes": null, - "id": 829, + "id": 785, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8885:6:0", + "referencedDeclaration": 774, + "src": "7923:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10533,32 +9937,32 @@ ], "expression": { "argumentTypes": null, - "id": 827, + "id": 783, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8869:11:0", + "referencedDeclaration": 58, + "src": "7907:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 828, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8869:15:0", + "referencedDeclaration": 1281, + "src": "7907:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 830, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -10566,26 +9970,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8869:23:0", + "src": "7907:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8855:37:0", + "src": "7893:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 832, + "id": 788, "nodeType": "ExpressionStatement", - "src": "8855:37:0" + "src": "7893:37:0" }, { "expression": { "argumentTypes": null, - "id": 844, + "id": 800, "isConstant": false, "isLValue": false, "isPure": false, @@ -10596,26 +10000,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 833, + "id": 789, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8902:7:0", + "referencedDeclaration": 73, + "src": "7940:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 835, + "id": 791, "indexExpression": { "argumentTypes": null, - "id": 834, + "id": 790, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8910:3:0", + "referencedDeclaration": 772, + "src": "7948:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10626,21 +10030,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8902:12:0", + "src": "7940:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 836, + "id": 792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8902:19:0", + "referencedDeclaration": 82, + "src": "7940:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10653,12 +10057,12 @@ "arguments": [ { "argumentTypes": null, - "id": 842, + "id": 798, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8948:6:0", + "referencedDeclaration": 774, + "src": "7986:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10678,26 +10082,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 837, + "id": 793, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8924:7:0", + "referencedDeclaration": 73, + "src": "7962:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 839, + "id": 795, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 794, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8932:3:0", + "referencedDeclaration": 772, + "src": "7970:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10708,41 +10112,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8924:12:0", + "src": "7962:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 840, + "id": 796, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8924:19:0", + "referencedDeclaration": 82, + "src": "7962:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 841, + "id": 797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8924:23:0", + "referencedDeclaration": 1281, + "src": "7962:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 843, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -10750,21 +10154,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8924:31:0", + "src": "7962:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8902:53:0", + "src": "7940:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 845, + "id": 801, "nodeType": "ExpressionStatement", - "src": "8902:53:0" + "src": "7940:53:0" }, { "expression": { @@ -10772,12 +10176,12 @@ "arguments": [ { "argumentTypes": null, - "id": 847, + "id": 803, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8977:3:0", + "referencedDeclaration": 772, + "src": "8015:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10785,12 +10189,12 @@ }, { "argumentTypes": null, - "id": 848, + "id": 804, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8982:6:0", + "referencedDeclaration": 774, + "src": "8020:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10802,26 +10206,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 849, + "id": 805, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8990:7:0", + "referencedDeclaration": 73, + "src": "8028:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 851, + "id": 807, "indexExpression": { "argumentTypes": null, - "id": 850, + "id": 806, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8998:3:0", + "referencedDeclaration": 772, + "src": "8036:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10832,21 +10236,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:12:0", + "src": "8028:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 852, + "id": 808, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8990:19:0", + "referencedDeclaration": 82, + "src": "8028:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10868,18 +10272,18 @@ "typeString": "uint256" } ], - "id": 846, + "id": 802, "name": "RemoveShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 264, - "src": "8965:11:0", + "referencedDeclaration": 220, + "src": "8003:11:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 853, + "id": 809, "isConstant": false, "isLValue": false, "isPure": false, @@ -10887,90 +10291,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8965:45:0", + "src": "8003:45:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 854, + "id": 810, "nodeType": "ExpressionStatement", - "src": "8965:45:0" + "src": "8003:45:0" } ] }, "documentation": null, - "id": 856, + "id": 812, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 821, + "id": 777, "modifierName": { "argumentTypes": null, - "id": 820, + "id": 776, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8815:9:0", + "referencedDeclaration": 290, + "src": "7853:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8815:11:0" + "src": "7853:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 823, + "id": 779, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8840:3:0", + "referencedDeclaration": 772, + "src": "7878:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 824, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 822, + "id": 778, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8827:12:0", + "referencedDeclaration": 305, + "src": "7865:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8827:17:0" + "src": "7865:17:0" } ], "name": "removeShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 819, + "id": 775, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 816, + "id": 772, "name": "who", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8779:11:0", + "scope": 812, + "src": "7817:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10978,10 +10382,10 @@ "typeString": "address" }, "typeName": { - "id": 815, + "id": 771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8779:7:0", + "src": "7817:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10992,11 +10396,11 @@ }, { "constant": false, - "id": 818, + "id": 774, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8792:14:0", + "scope": 812, + "src": "7830:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11004,10 +10408,10 @@ "typeString": "uint256" }, "typeName": { - "id": 817, + "id": 773, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8792:7:0", + "src": "7830:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11017,39 +10421,39 @@ "visibility": "internal" } ], - "src": "8778:29:0" + "src": "7816:29:0" }, "payable": false, "returnParameters": { - "id": 825, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "8845:0:0" + "src": "7883:0:0" }, - "scope": 1194, - "src": "8758:259:0", + "scope": 1146, + "src": "7796:259:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 923, + "id": 879, "nodeType": "Block", - "src": "9430:392:0", + "src": "8468:392:0", "statements": [ { "assignments": [ - 866 + 822 ], "declarations": [ { "constant": false, - "id": 866, + "id": 822, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9440:16:0", + "scope": 880, + "src": "8478:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11057,10 +10461,10 @@ "typeString": "uint256" }, "typeName": { - "id": 865, + "id": 821, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9440:7:0", + "src": "8478:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11070,7 +10474,7 @@ "visibility": "internal" } ], - "id": 871, + "id": 827, "initialValue": { "argumentTypes": null, "arguments": [ @@ -11078,18 +10482,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 868, + "id": 824, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9492:3:0", + "referencedDeclaration": 1500, + "src": "8530:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 869, + "id": 825, "isConstant": false, "isLValue": false, "isPure": false, @@ -11097,7 +10501,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9492:10:0", + "src": "8530:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11111,18 +10515,18 @@ "typeString": "address" } ], - "id": 867, + "id": 823, "name": "calculateTotalWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1113, - "src": "9459:32:0", + "referencedDeclaration": 1066, + "src": "8497:32:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 870, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -11130,14 +10534,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9459:44:0", + "src": "8497:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9440:63:0" + "src": "8478:63:0" }, { "condition": { @@ -11146,19 +10550,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 881, + "id": 837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 872, + "id": 828, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9517:6:0", + "referencedDeclaration": 814, + "src": "8555:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11175,34 +10579,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 875, + "id": 831, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9539:7:0", + "referencedDeclaration": 73, + "src": "8577:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 878, + "id": 834, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 876, + "id": 832, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9547:3:0", + "referencedDeclaration": 1500, + "src": "8585:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 877, + "id": 833, "isConstant": false, "isLValue": false, "isPure": false, @@ -11210,7 +10614,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9547:10:0", + "src": "8585:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11221,21 +10625,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9539:19:0", + "src": "8577:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 879, + "id": 835, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9539:29:0", + "referencedDeclaration": 84, + "src": "8577:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11251,32 +10655,32 @@ ], "expression": { "argumentTypes": null, - "id": 873, + "id": 829, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "9526:8:0", + "referencedDeclaration": 822, + "src": "8564:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 874, + "id": 830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "9526:12:0", + "referencedDeclaration": 1281, + "src": "8564:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 880, + "id": 836, "isConstant": false, "isLValue": false, "isPure": false, @@ -11284,43 +10688,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9526:43:0", + "src": "8564:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9517:52:0", + "src": "8555:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 885, + "id": 841, "nodeType": "IfStatement", - "src": "9513:66:0", + "src": "8551:66:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 882, + "id": 838, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "9571:6:0", + "referencedDeclaration": 1505, + "src": "8609:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 883, + "id": 839, "isConstant": false, "isLValue": false, "isPure": false, @@ -11328,21 +10732,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9571:8:0", + "src": "8609:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 884, + "id": 840, "nodeType": "ExpressionStatement", - "src": "9571:8:0" + "src": "8609:8:0" } }, { "expression": { "argumentTypes": null, - "id": 899, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -11353,34 +10757,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 886, + "id": 842, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9598:7:0", + "referencedDeclaration": 73, + "src": "8636:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 889, + "id": 845, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 887, + "id": 843, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9606:3:0", + "referencedDeclaration": 1500, + "src": "8644:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 888, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -11388,7 +10792,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9606:10:0", + "src": "8644:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11399,21 +10803,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9598:19:0", + "src": "8636:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 890, + "id": 846, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9598:29:0", + "referencedDeclaration": 84, + "src": "8636:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11426,12 +10830,12 @@ "arguments": [ { "argumentTypes": null, - "id": 897, + "id": 853, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9664:6:0", + "referencedDeclaration": 814, + "src": "8702:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11451,34 +10855,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 891, + "id": 847, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9630:7:0", + "referencedDeclaration": 73, + "src": "8668:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 894, + "id": 850, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 892, + "id": 848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9638:3:0", + "referencedDeclaration": 1500, + "src": "8676:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 893, + "id": 849, "isConstant": false, "isLValue": false, "isPure": false, @@ -11486,7 +10890,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9638:10:0", + "src": "8676:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11497,41 +10901,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9630:19:0", + "src": "8668:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 895, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9630:29:0", + "referencedDeclaration": 84, + "src": "8668:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 896, + "id": 852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9630:33:0", + "referencedDeclaration": 1305, + "src": "8668:33:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 898, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, @@ -11539,38 +10943,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9630:41:0", + "src": "8668:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9598:73:0", + "src": "8636:73:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 900, + "id": 856, "nodeType": "ExpressionStatement", - "src": "9598:73:0" + "src": "8636:73:0" }, { "expression": { "argumentTypes": null, - "id": 906, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 901, + "id": 857, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9681:14:0", + "referencedDeclaration": 60, + "src": "8719:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11583,12 +10987,12 @@ "arguments": [ { "argumentTypes": null, - "id": 904, + "id": 860, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9717:6:0", + "referencedDeclaration": 814, + "src": "8755:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11604,32 +11008,32 @@ ], "expression": { "argumentTypes": null, - "id": 902, + "id": 858, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9698:14:0", + "referencedDeclaration": 60, + "src": "8736:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 903, + "id": 859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9698:18:0", + "referencedDeclaration": 1305, + "src": "8736:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 905, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -11637,21 +11041,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9698:26:0", + "src": "8736:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:43:0", + "src": "8719:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 907, + "id": 863, "nodeType": "ExpressionStatement", - "src": "9681:43:0" + "src": "8719:43:0" }, { "expression": { @@ -11659,12 +11063,12 @@ "arguments": [ { "argumentTypes": null, - "id": 913, + "id": 869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9754:6:0", + "referencedDeclaration": 814, + "src": "8792:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11682,18 +11086,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 908, + "id": 864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9734:3:0", + "referencedDeclaration": 1500, + "src": "8772:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 911, + "id": 867, "isConstant": false, "isLValue": false, "isPure": false, @@ -11701,13 +11105,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:10:0", + "src": "8772:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 912, + "id": 868, "isConstant": false, "isLValue": false, "isPure": false, @@ -11715,13 +11119,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:19:0", + "src": "8772:19:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 914, + "id": 870, "isConstant": false, "isLValue": false, "isPure": false, @@ -11729,15 +11133,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9734:27:0", + "src": "8772:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 915, + "id": 871, "nodeType": "ExpressionStatement", - "src": "9734:27:0" + "src": "8772:27:0" }, { "expression": { @@ -11747,18 +11151,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 873, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9780:3:0", + "referencedDeclaration": 1500, + "src": "8818:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 918, + "id": 874, "isConstant": false, "isLValue": false, "isPure": false, @@ -11766,7 +11170,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9780:10:0", + "src": "8818:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11774,12 +11178,12 @@ }, { "argumentTypes": null, - "id": 919, + "id": 875, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9792:6:0", + "referencedDeclaration": 814, + "src": "8830:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11787,12 +11191,12 @@ }, { "argumentTypes": null, - "id": 920, + "id": 876, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9800:14:0", + "referencedDeclaration": 60, + "src": "8838:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11814,18 +11218,18 @@ "typeString": "uint256" } ], - "id": 916, + "id": 872, "name": "Withdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "9771:8:0", + "referencedDeclaration": 194, + "src": "8809:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 921, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -11833,20 +11237,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9771:44:0", + "src": "8809:44:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 922, + "id": 878, "nodeType": "ExpressionStatement", - "src": "9771:44:0" + "src": "8809:44:0" } ] }, "documentation": null, - "id": 924, + "id": 880, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -11857,18 +11261,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 861, + "id": 817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9418:3:0", + "referencedDeclaration": 1500, + "src": "8456:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 862, + "id": 818, "isConstant": false, "isLValue": false, "isPure": false, @@ -11876,44 +11280,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9418:10:0", + "src": "8456:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 863, + "id": 819, "modifierName": { "argumentTypes": null, - "id": 860, + "id": 816, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9405:12:0", + "referencedDeclaration": 305, + "src": "8443:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9405:24:0" + "src": "8443:24:0" } ], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 859, + "id": 815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 858, + "id": 814, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9382:14:0", + "scope": 880, + "src": "8420:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11921,10 +11325,10 @@ "typeString": "uint256" }, "typeName": { - "id": 857, + "id": 813, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9382:7:0", + "src": "8420:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11934,39 +11338,39 @@ "visibility": "internal" } ], - "src": "9381:16:0" + "src": "8419:16:0" }, "payable": false, "returnParameters": { - "id": 864, + "id": 820, "nodeType": "ParameterList", "parameters": [], - "src": "9430:0:0" + "src": "8468:0:0" }, - "scope": 1194, - "src": "9364:458:0", + "scope": 1146, + "src": "8402:458:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1011, + "id": 964, "nodeType": "Block", - "src": "9958:503:0", + "src": "8997:458:0", "statements": [ { "assignments": [ - 936 + 892 ], "declarations": [ { "constant": false, - "id": 936, + "id": 892, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9968:16:0", + "scope": 965, + "src": "9007:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11974,10 +11378,10 @@ "typeString": "uint256" }, "typeName": { - "id": 935, + "id": 891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9968:7:0", + "src": "9007:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11987,7 +11391,7 @@ "visibility": "internal" } ], - "id": 942, + "id": 898, "initialValue": { "argumentTypes": null, "arguments": [ @@ -11995,18 +11399,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 938, + "id": 894, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10025:3:0", + "referencedDeclaration": 1500, + "src": "9064:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 939, + "id": 895, "isConstant": false, "isLValue": false, "isPure": false, @@ -12014,7 +11418,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10025:10:0", + "src": "9064:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12022,12 +11426,12 @@ }, { "argumentTypes": null, - "id": 940, + "id": 896, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10037:5:0", + "referencedDeclaration": 884, + "src": "9076:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12045,18 +11449,18 @@ "typeString": "address" } ], - "id": 937, + "id": 893, "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "9987:37:0", + "referencedDeclaration": 1116, + "src": "9026:37:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 941, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -12064,14 +11468,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9987:56:0", + "src": "9026:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9968:75:0" + "src": "9007:75:0" }, { "condition": { @@ -12080,19 +11484,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 954, + "id": 910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 943, + "id": 899, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10057:6:0", + "referencedDeclaration": 882, + "src": "9096:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12111,34 +11515,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 946, + "id": 902, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10079:7:0", + "referencedDeclaration": 73, + "src": "9118:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 949, + "id": 905, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 903, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10087:3:0", + "referencedDeclaration": 1500, + "src": "9126:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 948, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, @@ -12146,7 +11550,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10087:10:0", + "src": "9126:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12157,35 +11561,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:19:0", + "src": "9118:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 950, + "id": 906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10079:35:0", + "referencedDeclaration": 90, + "src": "9118:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 952, + "id": 908, "indexExpression": { "argumentTypes": null, - "id": 951, + "id": 907, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10115:5:0", + "referencedDeclaration": 884, + "src": "9154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12196,7 +11600,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:42:0", + "src": "9118:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12212,32 +11616,32 @@ ], "expression": { "argumentTypes": null, - "id": 944, + "id": 900, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "10066:8:0", + "referencedDeclaration": 892, + "src": "9105:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 945, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "10066:12:0", + "referencedDeclaration": 1281, + "src": "9105:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 953, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -12245,43 +11649,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10066:56:0", + "src": "9105:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10057:65:0", + "src": "9096:65:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 958, + "id": 914, "nodeType": "IfStatement", - "src": "10053:79:0", + "src": "9092:79:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 955, + "id": 911, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10124:6:0", + "referencedDeclaration": 1505, + "src": "9163:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 956, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -12289,21 +11693,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10124:8:0", + "src": "9163:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 957, + "id": 913, "nodeType": "ExpressionStatement", - "src": "10124:8:0" + "src": "9163:8:0" } }, { "expression": { "argumentTypes": null, - "id": 976, + "id": 932, "isConstant": false, "isLValue": false, "isPure": false, @@ -12316,34 +11720,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 959, + "id": 915, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10143:7:0", + "referencedDeclaration": 73, + "src": "9182:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 962, + "id": 918, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 960, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10151:3:0", + "referencedDeclaration": 1500, + "src": "9190:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 961, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -12351,7 +11755,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10151:10:0", + "src": "9190:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12362,35 +11766,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10143:19:0", + "src": "9182:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 963, + "id": 919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10143:35:0", + "referencedDeclaration": 90, + "src": "9182:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 965, + "id": 921, "indexExpression": { "argumentTypes": null, - "id": 964, + "id": 920, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10179:5:0", + "referencedDeclaration": 884, + "src": "9218:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12401,7 +11805,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10143:42:0", + "src": "9182:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12414,12 +11818,12 @@ "arguments": [ { "argumentTypes": null, - "id": 974, + "id": 930, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10235:6:0", + "referencedDeclaration": 882, + "src": "9274:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12441,34 +11845,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 966, + "id": 922, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10188:7:0", + "referencedDeclaration": 73, + "src": "9227:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 969, + "id": 925, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 923, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10196:3:0", + "referencedDeclaration": 1500, + "src": "9235:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 968, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -12476,7 +11880,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10196:10:0", + "src": "9235:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12487,35 +11891,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:19:0", + "src": "9227:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 970, + "id": 926, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10188:35:0", + "referencedDeclaration": 90, + "src": "9227:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 972, + "id": 928, "indexExpression": { "argumentTypes": null, - "id": 971, + "id": 927, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10224:5:0", + "referencedDeclaration": 884, + "src": "9263:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12526,27 +11930,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:42:0", + "src": "9227:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 973, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10188:46:0", + "referencedDeclaration": 1305, + "src": "9227:46:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 975, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -12554,81 +11958,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10188:54:0", + "src": "9227:54:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10143:99:0", + "src": "9182:99:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 977, + "id": 933, "nodeType": "ExpressionStatement", - "src": "10143:99:0" + "src": "9182:99:0" }, { "expression": { "argumentTypes": null, - "id": 989, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10252:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "id": 979, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10259:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10252:13:0", + "id": 934, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9291:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 936, + "indexExpression": { + "argumentTypes": null, + "id": 935, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9298:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 981, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10252:28:0", + "nodeType": "IndexAccess", + "src": "9291:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12641,12 +12029,12 @@ "arguments": [ { "argumentTypes": null, - "id": 987, + "id": 941, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10316:6:0", + "referencedDeclaration": 882, + "src": "9325:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12662,75 +12050,59 @@ ], "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 982, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10283:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 984, - "indexExpression": { - "argumentTypes": null, - "id": 983, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10283:13:0", + "id": 937, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9307:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 939, + "indexExpression": { + "argumentTypes": null, + "id": 938, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9314:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 985, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10283:28:0", + "nodeType": "IndexAccess", + "src": "9307:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 986, + "id": 940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10283:32:0", + "referencedDeclaration": 1305, + "src": "9307:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 988, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -12738,21 +12110,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10283:40:0", + "src": "9307:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10252:71:0", + "src": "9291:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 990, + "id": 944, "nodeType": "ExpressionStatement", - "src": "10252:71:0" + "src": "9291:41:0" }, { "expression": { @@ -12762,18 +12134,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 995, + "id": 949, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10355:3:0", + "referencedDeclaration": 1500, + "src": "9364:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 996, + "id": 950, "isConstant": false, "isLValue": false, "isPure": false, @@ -12781,7 +12153,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10355:10:0", + "src": "9364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12789,12 +12161,12 @@ }, { "argumentTypes": null, - "id": 997, + "id": 951, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10367:6:0", + "referencedDeclaration": 882, + "src": "9376:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12817,12 +12189,12 @@ "arguments": [ { "argumentTypes": null, - "id": 992, + "id": 946, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10339:5:0", + "referencedDeclaration": 884, + "src": "9348:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12836,18 +12208,18 @@ "typeString": "address" } ], - "id": 991, + "id": 945, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "10333:5:0", + "referencedDeclaration": 1213, + "src": "9342:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 993, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, @@ -12855,27 +12227,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:12:0", + "src": "9342:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 994, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 1212, - "src": "10333:21:0", + "referencedDeclaration": 1164, + "src": "9342:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 998, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -12883,15 +12255,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:41:0", + "src": "9342:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 999, + "id": 953, "nodeType": "ExpressionStatement", - "src": "10333:41:0" + "src": "9342:41:0" }, { "expression": { @@ -12901,18 +12273,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1001, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10398:3:0", + "referencedDeclaration": 1500, + "src": "9407:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1002, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -12920,7 +12292,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10398:10:0", + "src": "9407:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12928,12 +12300,12 @@ }, { "argumentTypes": null, - "id": 1003, + "id": 957, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10410:6:0", + "referencedDeclaration": 882, + "src": "9419:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12941,12 +12313,12 @@ }, { "argumentTypes": null, - "id": 1004, + "id": 958, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10418:5:0", + "referencedDeclaration": 884, + "src": "9427:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12954,55 +12326,39 @@ }, { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1005, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10425:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1007, - "indexExpression": { - "argumentTypes": null, - "id": 1006, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10425:13:0", + "id": 959, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9434:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "id": 960, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9441:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1008, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10425:28:0", + "nodeType": "IndexAccess", + "src": "9434:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13028,18 +12384,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 954, "name": "TokenWithdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "10384:13:0", + "referencedDeclaration": 204, + "src": "9393:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,address,uint256)" } }, - "id": 1009, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -13047,20 +12403,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10384:70:0", + "src": "9393:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1010, + "id": 963, "nodeType": "ExpressionStatement", - "src": "10384:70:0" + "src": "9393:55:0" } ] }, "documentation": null, - "id": 1012, + "id": 965, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -13071,18 +12427,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 931, + "id": 887, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9946:3:0", + "referencedDeclaration": 1500, + "src": "8985:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 932, + "id": 888, "isConstant": false, "isLValue": false, "isPure": false, @@ -13090,44 +12446,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9946:10:0", + "src": "8985:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 933, + "id": 889, "modifierName": { "argumentTypes": null, - "id": 930, + "id": 886, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9933:12:0", + "referencedDeclaration": 305, + "src": "8972:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9933:24:0" + "src": "8972:24:0" } ], "name": "withdrawToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 929, + "id": 885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 926, + "id": 882, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9895:14:0", + "scope": 965, + "src": "8934:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13135,10 +12491,10 @@ "typeString": "uint256" }, "typeName": { - "id": 925, + "id": 881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9895:7:0", + "src": "8934:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13149,11 +12505,11 @@ }, { "constant": false, - "id": 928, + "id": 884, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9911:13:0", + "scope": 965, + "src": "8950:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13161,10 +12517,10 @@ "typeString": "address" }, "typeName": { - "id": 927, + "id": 883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9911:7:0", + "src": "8950:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13174,26 +12530,26 @@ "visibility": "internal" } ], - "src": "9894:31:0" + "src": "8933:31:0" }, "payable": false, "returnParameters": { - "id": 934, + "id": 890, "nodeType": "ParameterList", "parameters": [], - "src": "9958:0:0" + "src": "8997:0:0" }, - "scope": 1194, - "src": "9872:589:0", + "scope": 1146, + "src": "8911:544:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1050, + "id": 1003, "nodeType": "Block", - "src": "10726:267:0", + "src": "9720:267:0", "statements": [ { "condition": { @@ -13202,19 +12558,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1024, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1021, + "id": 974, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10740:6:0", + "referencedDeclaration": 967, + "src": "9734:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13227,18 +12583,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1022, + "id": 975, "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "10749:39:0", + "referencedDeclaration": 1127, + "src": "9743:39:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1023, + "id": 976, "isConstant": false, "isLValue": false, "isPure": false, @@ -13246,43 +12602,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10749:41:0", + "src": "9743:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10740:50:0", + "src": "9734:50:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1028, + "id": 981, "nodeType": "IfStatement", - "src": "10736:64:0", + "src": "9730:64:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 1025, + "id": 978, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10792:6:0", + "referencedDeclaration": 1505, + "src": "9786:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1026, + "id": 979, "isConstant": false, "isLValue": false, "isPure": false, @@ -13290,33 +12646,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10792:8:0", + "src": "9786:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1027, + "id": 980, "nodeType": "ExpressionStatement", - "src": "10792:8:0" + "src": "9786:8:0" } }, { "expression": { "argumentTypes": null, - "id": 1034, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1029, + "id": 982, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10819:22:0", + "referencedDeclaration": 69, + "src": "9813:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13329,12 +12685,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1032, + "id": 985, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10871:6:0", + "referencedDeclaration": 967, + "src": "9865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13350,32 +12706,32 @@ ], "expression": { "argumentTypes": null, - "id": 1030, + "id": 983, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10844:22:0", + "referencedDeclaration": 69, + "src": "9838:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1031, + "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10844:26:0", + "referencedDeclaration": 1305, + "src": "9838:26:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1033, + "id": 986, "isConstant": false, "isLValue": false, "isPure": false, @@ -13383,21 +12739,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10844:34:0", + "src": "9838:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10819:59:0", + "src": "9813:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1035, + "id": 988, "nodeType": "ExpressionStatement", - "src": "10819:59:0" + "src": "9813:59:0" }, { "expression": { @@ -13405,12 +12761,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1039, + "id": 992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10900:6:0", + "referencedDeclaration": 967, + "src": "9894:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13426,18 +12782,18 @@ ], "expression": { "argumentTypes": null, - "id": 1036, + "id": 989, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10888:2:0", + "referencedDeclaration": 969, + "src": "9882:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1038, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -13445,13 +12801,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10888:11:0", + "src": "9882:11:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1040, + "id": 993, "isConstant": false, "isLValue": false, "isPure": false, @@ -13459,15 +12815,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10888:19:0", + "src": "9882:19:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 994, "nodeType": "ExpressionStatement", - "src": "10888:19:0" + "src": "9882:19:0" }, { "expression": { @@ -13477,18 +12833,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1043, + "id": 996, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10939:3:0", + "referencedDeclaration": 1500, + "src": "9933:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1044, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, @@ -13496,7 +12852,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10939:10:0", + "src": "9933:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13504,12 +12860,12 @@ }, { "argumentTypes": null, - "id": 1045, + "id": 998, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10951:2:0", + "referencedDeclaration": 969, + "src": "9945:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13517,12 +12873,12 @@ }, { "argumentTypes": null, - "id": 1046, + "id": 999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10955:6:0", + "referencedDeclaration": 967, + "src": "9949:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13530,12 +12886,12 @@ }, { "argumentTypes": null, - "id": 1047, + "id": 1000, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10963:22:0", + "referencedDeclaration": 69, + "src": "9957:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13561,18 +12917,18 @@ "typeString": "uint256" } ], - "id": 1042, + "id": 995, "name": "WithdrawSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 304, - "src": "10917:21:0", + "referencedDeclaration": 260, + "src": "9911:21:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 1048, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -13580,57 +12936,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10917:69:0", + "src": "9911:69:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "10917:69:0" + "src": "9911:69:0" } ] }, "documentation": null, - "id": 1051, + "id": 1004, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 1019, + "id": 972, "modifierName": { "argumentTypes": null, - "id": 1018, + "id": 971, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "10714:9:0", + "referencedDeclaration": 290, + "src": "9708:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "10714:11:0" + "src": "9708:11:0" } ], "name": "withdrawSharedExpense", "nodeType": "FunctionDefinition", "parameters": { - "id": 1017, + "id": 970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1014, + "id": 967, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10679:14:0", + "scope": 1004, + "src": "9673:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13638,10 +12994,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1013, + "id": 966, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10679:7:0", + "src": "9673:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13652,11 +13008,11 @@ }, { "constant": false, - "id": 1016, + "id": 969, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10695:10:0", + "scope": 1004, + "src": "9689:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13664,10 +13020,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10695:7:0", + "src": "9689:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13677,39 +13033,39 @@ "visibility": "internal" } ], - "src": "10678:28:0" + "src": "9672:28:0" }, "payable": false, "returnParameters": { - "id": 1020, + "id": 973, "nodeType": "ParameterList", "parameters": [], - "src": "10726:0:0" + "src": "9720:0:0" }, - "scope": 1194, - "src": "10648:345:0", + "scope": 1146, + "src": "9642:345:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1112, + "id": 1065, "nodeType": "Block", - "src": "11276:651:0", + "src": "10270:651:0", "statements": [ { "assignments": [ - 1062 + 1015 ], "declarations": [ { "constant": false, - "id": 1062, + "id": 1015, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11424:18:0", + "scope": 1066, + "src": "10418:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13717,10 +13073,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1061, + "id": 1014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11424:7:0", + "src": "10418:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13730,18 +13086,18 @@ "visibility": "internal" } ], - "id": 1068, + "id": 1021, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1066, + "id": 1019, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "11462:14:0", + "referencedDeclaration": 60, + "src": "10456:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13759,18 +13115,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1063, + "id": 1016, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "11445:4:0", + "referencedDeclaration": 1513, + "src": "10439:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 1064, + "id": 1017, "isConstant": false, "isLValue": false, "isPure": false, @@ -13778,27 +13134,27 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "11445:12:0", + "src": "10439:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1065, + "id": 1018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11445:16:0", + "referencedDeclaration": 1305, + "src": "10439:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1067, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": false, @@ -13806,31 +13162,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11445:32:0", + "src": "10439:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11424:53:0" + "src": "10418:53:0" }, { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1069, + "id": 1022, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11487:10:0", + "referencedDeclaration": 1015, + "src": "10481:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13843,12 +13199,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1072, + "id": 1025, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "11515:13:0", + "referencedDeclaration": 67, + "src": "10509:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13864,32 +13220,32 @@ ], "expression": { "argumentTypes": null, - "id": 1070, + "id": 1023, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11500:10:0", + "referencedDeclaration": 1015, + "src": "10494:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1071, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "11500:14:0", + "referencedDeclaration": 1281, + "src": "10494:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1073, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -13897,38 +13253,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11500:29:0", + "src": "10494:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11487:42:0", + "src": "10481:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1075, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "11487:42:0" + "src": "10481:42:0" }, { "expression": { "argumentTypes": null, - "id": 1081, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1076, + "id": 1029, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11539:10:0", + "referencedDeclaration": 1015, + "src": "10533:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13941,12 +13297,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1079, + "id": 1032, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "11567:22:0", + "referencedDeclaration": 69, + "src": "10561:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13962,32 +13318,32 @@ ], "expression": { "argumentTypes": null, - "id": 1077, + "id": 1030, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11552:10:0", + "referencedDeclaration": 1015, + "src": "10546:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11552:14:0", + "referencedDeclaration": 1305, + "src": "10546:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1080, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, @@ -13995,34 +13351,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11552:38:0", + "src": "10546:38:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11539:51:0", + "src": "10533:51:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1082, + "id": 1035, "nodeType": "ExpressionStatement", - "src": "11539:51:0" + "src": "10533:51:0" }, { "assignments": [ - 1084 + 1037 ], "declarations": [ { "constant": false, - "id": 1084, + "id": 1037, "name": "ethPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11710:22:0", + "scope": 1066, + "src": "10704:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14030,10 +13386,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1083, + "id": 1036, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11710:7:0", + "src": "10704:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14043,18 +13399,18 @@ "visibility": "internal" } ], - "id": 1090, + "id": 1043, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1087, + "id": 1040, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "11754:11:0", + "referencedDeclaration": 58, + "src": "10748:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14062,12 +13418,12 @@ }, { "argumentTypes": null, - "id": 1088, + "id": 1041, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11767:9:0", + "referencedDeclaration": 65, + "src": "10761:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14087,32 +13443,32 @@ ], "expression": { "argumentTypes": null, - "id": 1085, + "id": 1038, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11735:10:0", + "referencedDeclaration": 1015, + "src": "10729:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1086, + "id": 1039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "11735:18:0", + "referencedDeclaration": 1344, + "src": "10729:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1089, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -14120,27 +13476,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11735:42:0", + "src": "10729:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11710:67:0" + "src": "10704:67:0" }, { "assignments": [ - 1092 + 1045 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1045, "name": "ethPPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11788:14:0", + "scope": 1066, + "src": "10782:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14148,10 +13504,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1091, + "id": 1044, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11788:7:0", + "src": "10782:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14161,7 +13517,7 @@ "visibility": "internal" } ], - "id": 1100, + "id": 1053, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14171,26 +13527,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1095, + "id": 1048, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "11824:7:0", + "referencedDeclaration": 73, + "src": "10818:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1097, + "id": 1050, "indexExpression": { "argumentTypes": null, - "id": 1096, + "id": 1049, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11832:3:0", + "referencedDeclaration": 1006, + "src": "10826:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14201,21 +13557,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11824:12:0", + "src": "10818:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1098, + "id": 1051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11824:19:0", + "referencedDeclaration": 82, + "src": "10818:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14231,32 +13587,32 @@ ], "expression": { "argumentTypes": null, - "id": 1093, + "id": 1046, "name": "ethPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "11805:14:0", + "referencedDeclaration": 1037, + "src": "10799:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1094, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "11805:18:0", + "referencedDeclaration": 1243, + "src": "10799:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1099, + "id": 1052, "isConstant": false, "isLValue": false, "isPure": false, @@ -14264,27 +13620,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11805:39:0", + "src": "10799:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11788:56:0" + "src": "10782:56:0" }, { "assignments": [ - 1102 + 1055 ], "declarations": [ { "constant": false, - "id": 1102, + "id": 1055, "name": "ethVal", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11854:14:0", + "scope": 1066, + "src": "10848:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14292,10 +13648,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1101, + "id": 1054, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11854:7:0", + "src": "10848:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14305,7 +13661,7 @@ "visibility": "internal" } ], - "id": 1109, + "id": 1062, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14315,7 +13671,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1107, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": true, @@ -14323,14 +13679,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1105, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11882:2:0", + "src": "10876:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -14342,18 +13698,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1106, + "id": 1059, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11886:9:0", + "referencedDeclaration": 65, + "src": "10880:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11882:13:0", + "src": "10876:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14369,32 +13725,32 @@ ], "expression": { "argumentTypes": null, - "id": 1103, + "id": 1056, "name": "ethPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "11871:6:0", + "referencedDeclaration": 1045, + "src": "10865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1104, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "11871:10:0", + "referencedDeclaration": 1261, + "src": "10865:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1108, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -14402,38 +13758,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11871:25:0", + "src": "10865:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11854:42:0" + "src": "10848:42:0" }, { "expression": { "argumentTypes": null, - "id": 1110, + "id": 1063, "name": "ethVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "11914:6:0", + "referencedDeclaration": 1055, + "src": "10908:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1060, - "id": 1111, + "functionReturnParameters": 1013, + "id": 1064, "nodeType": "Return", - "src": "11907:13:0" + "src": "10901:13:0" } ] }, "documentation": null, - "id": 1113, + "id": 1066, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -14442,49 +13798,49 @@ "arguments": [ { "argumentTypes": null, - "id": 1056, + "id": 1009, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11253:3:0", + "referencedDeclaration": 1006, + "src": "10247:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 1057, + "id": 1010, "modifierName": { "argumentTypes": null, - "id": 1055, + "id": 1008, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "11240:12:0", + "referencedDeclaration": 305, + "src": "10234:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "11240:17:0" + "src": "10234:17:0" } ], "name": "calculateTotalWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1054, + "id": 1007, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1053, + "id": 1006, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11211:11:0", + "scope": 1066, + "src": "10205:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14492,10 +13848,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 1005, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11211:7:0", + "src": "10205:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14505,20 +13861,20 @@ "visibility": "internal" } ], - "src": "11210:13:0" + "src": "10204:13:0" }, "payable": false, "returnParameters": { - "id": 1060, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1059, + "id": 1012, "name": "", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11267:7:0", + "scope": 1066, + "src": "10261:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14526,10 +13882,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1058, + "id": 1011, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11267:7:0", + "src": "10261:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14539,32 +13895,32 @@ "visibility": "internal" } ], - "src": "11266:9:0" + "src": "10260:9:0" }, - "scope": 1194, - "src": "11169:758:0", + "scope": 1146, + "src": "10163:758:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1163, + "id": 1115, "nodeType": "Block", - "src": "12042:418:0", + "src": "11036:403:0", "statements": [ { "assignments": [ - 1123 + 1076 ], "declarations": [ { "constant": false, - "id": 1123, + "id": 1076, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12052:18:0", + "scope": 1116, + "src": "11046:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14572,10 +13928,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1122, + "id": 1075, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12052:7:0", + "src": "11046:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14585,61 +13941,45 @@ "visibility": "internal" } ], - "id": 1133, + "id": 1085, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1128, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "12102:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1130, - "indexExpression": { - "argumentTypes": null, - "id": 1129, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12109:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12102:13:0", + "id": 1081, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "11096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 1083, + "indexExpression": { + "argumentTypes": null, + "id": 1082, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1070, + "src": "11103:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1131, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "12102:28:0", + "nodeType": "IndexAccess", + "src": "11096:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14658,12 +13998,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1125, + "id": 1078, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12091:5:0", + "referencedDeclaration": 1070, + "src": "11085:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14677,18 +14017,18 @@ "typeString": "address" } ], - "id": 1124, + "id": 1077, "name": "checkERC20Balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 452, - "src": "12073:17:0", + "referencedDeclaration": 408, + "src": "11067:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1126, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -14696,27 +14036,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:24:0", + "src": "11067:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1127, + "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "12073:28:0", + "referencedDeclaration": 1305, + "src": "11067:28:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1132, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, @@ -14724,27 +14064,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:58:0", + "src": "11067:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12052:79:0" + "src": "11046:64:0" }, { "assignments": [ - 1135 + 1087 ], "declarations": [ { "constant": false, - "id": 1135, + "id": 1087, "name": "tokPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12243:22:0", + "scope": 1116, + "src": "11222:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14752,10 +14092,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1134, + "id": 1086, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12243:7:0", + "src": "11222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14765,18 +14105,18 @@ "visibility": "internal" } ], - "id": 1141, + "id": 1093, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1138, + "id": 1090, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "12287:11:0", + "referencedDeclaration": 58, + "src": "11266:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14784,12 +14124,12 @@ }, { "argumentTypes": null, - "id": 1139, + "id": 1091, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12300:9:0", + "referencedDeclaration": 65, + "src": "11279:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14809,32 +14149,32 @@ ], "expression": { "argumentTypes": null, - "id": 1136, + "id": 1088, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1123, - "src": "12268:10:0", + "referencedDeclaration": 1076, + "src": "11247:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1137, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12268:18:0", + "referencedDeclaration": 1344, + "src": "11247:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1140, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": false, @@ -14842,27 +14182,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12268:42:0", + "src": "11247:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12243:67:0" + "src": "11222:67:0" }, { "assignments": [ - 1143 + 1095 ], "declarations": [ { "constant": false, - "id": 1143, + "id": 1095, "name": "tokPPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12321:14:0", + "scope": 1116, + "src": "11300:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14870,10 +14210,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1142, + "id": 1094, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12321:7:0", + "src": "11300:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14883,7 +14223,7 @@ "visibility": "internal" } ], - "id": 1151, + "id": 1103, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14893,26 +14233,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1146, + "id": 1098, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "12357:7:0", + "referencedDeclaration": 73, + "src": "11336:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1148, + "id": 1100, "indexExpression": { "argumentTypes": null, - "id": 1147, + "id": 1099, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1115, - "src": "12365:3:0", + "referencedDeclaration": 1068, + "src": "11344:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14923,21 +14263,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12357:12:0", + "src": "11336:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1149, + "id": 1101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "12357:19:0", + "referencedDeclaration": 82, + "src": "11336:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14953,32 +14293,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1096, "name": "tokPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1135, - "src": "12338:14:0", + "referencedDeclaration": 1087, + "src": "11317:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1145, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "12338:18:0", + "referencedDeclaration": 1243, + "src": "11317:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1150, + "id": 1102, "isConstant": false, "isLValue": false, "isPure": false, @@ -14986,27 +14326,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12338:39:0", + "src": "11317:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12321:56:0" + "src": "11300:56:0" }, { "assignments": [ - 1153 + 1105 ], "declarations": [ { "constant": false, - "id": 1153, + "id": 1105, "name": "tokVal", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12387:14:0", + "scope": 1116, + "src": "11366:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15014,10 +14354,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1152, + "id": 1104, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12387:7:0", + "src": "11366:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15027,7 +14367,7 @@ "visibility": "internal" } ], - "id": 1160, + "id": 1112, "initialValue": { "argumentTypes": null, "arguments": [ @@ -15037,7 +14377,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1158, + "id": 1110, "isConstant": false, "isLValue": false, "isPure": true, @@ -15045,14 +14385,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1156, + "id": 1108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12415:2:0", + "src": "11394:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -15064,18 +14404,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1157, + "id": 1109, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12419:9:0", + "referencedDeclaration": 65, + "src": "11398:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12415:13:0", + "src": "11394:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15091,32 +14431,32 @@ ], "expression": { "argumentTypes": null, - "id": 1154, + "id": 1106, "name": "tokPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "12404:6:0", + "referencedDeclaration": 1095, + "src": "11383:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1155, + "id": 1107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "12404:10:0", + "referencedDeclaration": 1261, + "src": "11383:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1159, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -15124,38 +14464,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12404:25:0", + "src": "11383:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12387:42:0" + "src": "11366:42:0" }, { "expression": { "argumentTypes": null, - "id": 1161, + "id": 1113, "name": "tokVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1153, - "src": "12447:6:0", + "referencedDeclaration": 1105, + "src": "11426:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1121, - "id": 1162, + "functionReturnParameters": 1074, + "id": 1114, "nodeType": "Return", - "src": "12440:13:0" + "src": "11419:13:0" } ] }, "documentation": null, - "id": 1164, + "id": 1116, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15163,16 +14503,16 @@ "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1118, + "id": 1071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1115, + "id": 1068, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11981:11:0", + "scope": 1116, + "src": "10975:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15180,10 +14520,10 @@ "typeString": "address" }, "typeName": { - "id": 1114, + "id": 1067, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11981:7:0", + "src": "10975:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15194,11 +14534,11 @@ }, { "constant": false, - "id": 1117, + "id": 1070, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11994:13:0", + "scope": 1116, + "src": "10988:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15206,10 +14546,10 @@ "typeString": "address" }, "typeName": { - "id": 1116, + "id": 1069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11994:7:0", + "src": "10988:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15219,20 +14559,20 @@ "visibility": "internal" } ], - "src": "11980:28:0" + "src": "10974:28:0" }, "payable": false, "returnParameters": { - "id": 1121, + "id": 1074, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1073, "name": "", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12033:7:0", + "scope": 1116, + "src": "11027:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15240,10 +14580,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1119, + "id": 1072, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12033:7:0", + "src": "11027:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15253,19 +14593,19 @@ "visibility": "internal" } ], - "src": "12032:9:0" + "src": "11026:9:0" }, - "scope": 1194, - "src": "11934:526:0", + "scope": 1146, + "src": "10928:511:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1174, + "id": 1126, "nodeType": "Block", - "src": "12550:65:0", + "src": "11529:65:0", "statements": [ { "expression": { @@ -15273,12 +14613,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1171, + "id": 1123, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "12585:22:0", + "referencedDeclaration": 69, + "src": "11564:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15294,32 +14634,32 @@ ], "expression": { "argumentTypes": null, - "id": 1169, + "id": 1121, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "12567:13:0", + "referencedDeclaration": 67, + "src": "11546:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1170, + "id": 1122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "12567:17:0", + "referencedDeclaration": 1281, + "src": "11546:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1172, + "id": 1124, "isConstant": false, "isLValue": false, "isPure": false, @@ -15327,21 +14667,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12567:41:0", + "src": "11546:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1168, - "id": 1173, + "functionReturnParameters": 1120, + "id": 1125, "nodeType": "Return", - "src": "12560:48:0" + "src": "11539:48:0" } ] }, "documentation": null, - "id": 1175, + "id": 1127, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15349,23 +14689,23 @@ "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1165, + "id": 1117, "nodeType": "ParameterList", "parameters": [], - "src": "12514:2:0" + "src": "11493:2:0" }, "payable": false, "returnParameters": { - "id": 1168, + "id": 1120, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1167, + "id": 1119, "name": "", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "12541:7:0", + "scope": 1127, + "src": "11520:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15373,10 +14713,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1166, + "id": 1118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12541:7:0", + "src": "11520:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15386,19 +14726,19 @@ "visibility": "internal" } ], - "src": "12540:9:0" + "src": "11519:9:0" }, - "scope": 1194, - "src": "12466:149:0", + "scope": 1146, + "src": "11445:149:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1192, + "id": 1144, "nodeType": "Block", - "src": "12737:39:0", + "src": "11716:39:0", "statements": [ { "expression": { @@ -15406,12 +14746,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1179, - "src": "12764:1:0", + "referencedDeclaration": 1131, + "src": "11743:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15419,12 +14759,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1141, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1181, - "src": "12767:1:0", + "referencedDeclaration": 1133, + "src": "11746:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15444,32 +14784,32 @@ ], "expression": { "argumentTypes": null, - "id": 1186, + "id": 1138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "12754:1:0", + "referencedDeclaration": 1129, + "src": "11733:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1187, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12754:9:0", + "referencedDeclaration": 1344, + "src": "11733:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1190, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -15477,21 +14817,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12754:15:0", + "src": "11733:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1185, - "id": 1191, + "functionReturnParameters": 1137, + "id": 1143, "nodeType": "Return", - "src": "12747:22:0" + "src": "11726:22:0" } ] }, "documentation": null, - "id": 1193, + "id": 1145, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15499,16 +14839,16 @@ "name": "delegatePercent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1182, + "id": 1134, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1177, + "id": 1129, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12670:9:0", + "scope": 1145, + "src": "11649:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15516,10 +14856,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1176, + "id": 1128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12670:7:0", + "src": "11649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15530,11 +14870,11 @@ }, { "constant": false, - "id": 1179, + "id": 1131, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12681:9:0", + "scope": 1145, + "src": "11660:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15542,10 +14882,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1178, + "id": 1130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12681:7:0", + "src": "11660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15556,11 +14896,11 @@ }, { "constant": false, - "id": 1181, + "id": 1133, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12692:9:0", + "scope": 1145, + "src": "11671:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15568,10 +14908,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1180, + "id": 1132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12692:7:0", + "src": "11671:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15581,20 +14921,20 @@ "visibility": "internal" } ], - "src": "12669:33:0" + "src": "11648:33:0" }, "payable": false, "returnParameters": { - "id": 1185, + "id": 1137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 1136, "name": "", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12728:7:0", + "scope": 1145, + "src": "11707:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15602,10 +14942,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1183, + "id": 1135, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12728:7:0", + "src": "11707:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15615,17 +14955,17 @@ "visibility": "internal" } ], - "src": "12727:9:0" + "src": "11706:9:0" }, - "scope": 1194, - "src": "12645:131:0", + "scope": 1146, + "src": "11624:131:0", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1394, - "src": "989:11789:0" + "scope": 1346, + "src": "444:11313:0" }, { "baseContracts": [], @@ -15633,20 +14973,20 @@ "contractKind": "contract", "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", "fullyImplemented": false, - "id": 1221, + "id": 1173, "linearizedBaseContracts": [ - 1221 + 1173 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1196, + "id": 1148, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 1221, - "src": "12932:26:0", + "scope": 1173, + "src": "11911:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15654,10 +14994,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1195, + "id": 1147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12932:7:0", + "src": "11911:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15669,7 +15009,7 @@ { "body": null, "documentation": null, - "id": 1203, + "id": 1155, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -15677,16 +15017,16 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1199, + "id": 1151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1198, + "id": 1150, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "12981:11:0", + "scope": 1155, + "src": "11960:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15694,10 +15034,10 @@ "typeString": "address" }, "typeName": { - "id": 1197, + "id": 1149, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12981:7:0", + "src": "11960:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15707,20 +15047,20 @@ "visibility": "internal" } ], - "src": "12980:13:0" + "src": "11959:13:0" }, "payable": false, "returnParameters": { - "id": 1202, + "id": 1154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1201, + "id": 1153, "name": "", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "13019:7:0", + "scope": 1155, + "src": "11998:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15728,10 +15068,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1200, + "id": 1152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13019:7:0", + "src": "11998:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15741,10 +15081,10 @@ "visibility": "internal" } ], - "src": "13018:9:0" + "src": "11997:9:0" }, - "scope": 1221, - "src": "12962:66:0", + "scope": 1173, + "src": "11941:66:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -15752,7 +15092,7 @@ { "body": null, "documentation": null, - "id": 1212, + "id": 1164, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -15760,16 +15100,16 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1208, + "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1205, + "id": 1157, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13049:10:0", + "scope": 1164, + "src": "12028:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15777,10 +15117,10 @@ "typeString": "address" }, "typeName": { - "id": 1204, + "id": 1156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13049:7:0", + "src": "12028:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15791,11 +15131,11 @@ }, { "constant": false, - "id": 1207, + "id": 1159, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13061:13:0", + "scope": 1164, + "src": "12040:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15803,10 +15143,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1158, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13061:7:0", + "src": "12040:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15816,20 +15156,20 @@ "visibility": "internal" } ], - "src": "13048:27:0" + "src": "12027:27:0" }, "payable": false, "returnParameters": { - "id": 1211, + "id": 1163, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1210, + "id": 1162, "name": "", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13092:4:0", + "scope": 1164, + "src": "12071:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15837,10 +15177,10 @@ "typeString": "bool" }, "typeName": { - "id": 1209, + "id": 1161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13092:4:0", + "src": "12071:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15850,10 +15190,10 @@ "visibility": "internal" } ], - "src": "13091:6:0" + "src": "12070:6:0" }, - "scope": 1221, - "src": "13031:67:0", + "scope": 1173, + "src": "12010:67:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -15861,21 +15201,21 @@ { "anonymous": false, "documentation": null, - "id": 1220, + "id": 1172, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1219, + "id": 1171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1214, + "id": 1166, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13116:20:0", + "scope": 1172, + "src": "12095:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15883,10 +15223,10 @@ "typeString": "address" }, "typeName": { - "id": 1213, + "id": 1165, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13116:7:0", + "src": "12095:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15897,12 +15237,12 @@ }, { "constant": false, - "id": 1216, + "id": 1168, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13138:18:0", + "scope": 1172, + "src": "12117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15910,10 +15250,10 @@ "typeString": "address" }, "typeName": { - "id": 1215, + "id": 1167, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13138:7:0", + "src": "12117:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15924,12 +15264,12 @@ }, { "constant": false, - "id": 1218, + "id": 1170, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13158:13:0", + "scope": 1172, + "src": "12137:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15937,10 +15277,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1217, + "id": 1169, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13158:7:0", + "src": "12137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15950,13 +15290,13 @@ "visibility": "internal" } ], - "src": "13115:57:0" + "src": "12094:57:0" }, - "src": "13101:72:0" + "src": "12080:72:0" } ], - "scope": 1394, - "src": "12908:267:0" + "scope": 1346, + "src": "11887:267:0" }, { "baseContracts": [ @@ -15964,31 +15304,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1222, + "id": 1174, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1221, - "src": "13285:10:0", + "referencedDeclaration": 1173, + "src": "12264:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$1221", + "typeIdentifier": "t_contract$_ERC20Basic_$1173", "typeString": "contract ERC20Basic" } }, - "id": 1223, + "id": 1175, "nodeType": "InheritanceSpecifier", - "src": "13285:10:0" + "src": "12264:10:0" } ], "contractDependencies": [ - 1221 + 1173 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 1261, + "id": 1213, "linearizedBaseContracts": [ - 1261, - 1221 + 1213, + 1173 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -15996,7 +15336,7 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1184, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -16004,16 +15344,16 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1225, + "id": 1177, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13319:13:0", + "scope": 1184, + "src": "12298:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16021,10 +15361,10 @@ "typeString": "address" }, "typeName": { - "id": 1224, + "id": 1176, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13319:7:0", + "src": "12298:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16035,11 +15375,11 @@ }, { "constant": false, - "id": 1227, + "id": 1179, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13334:15:0", + "scope": 1184, + "src": "12313:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16047,10 +15387,10 @@ "typeString": "address" }, "typeName": { - "id": 1226, + "id": 1178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13334:7:0", + "src": "12313:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16060,20 +15400,20 @@ "visibility": "internal" } ], - "src": "13318:32:0" + "src": "12297:32:0" }, "payable": false, "returnParameters": { - "id": 1231, + "id": 1183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1182, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13376:7:0", + "scope": 1184, + "src": "12355:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16081,10 +15421,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1181, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13376:7:0", + "src": "12355:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16094,10 +15434,10 @@ "visibility": "internal" } ], - "src": "13375:9:0" + "src": "12354:9:0" }, - "scope": 1261, - "src": "13300:85:0", + "scope": 1213, + "src": "12279:85:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -16105,7 +15445,7 @@ { "body": null, "documentation": null, - "id": 1243, + "id": 1195, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -16113,16 +15453,16 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1239, + "id": 1191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1186, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13410:12:0", + "scope": 1195, + "src": "12389:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16130,10 +15470,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13410:7:0", + "src": "12389:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16144,11 +15484,11 @@ }, { "constant": false, - "id": 1236, + "id": 1188, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13424:10:0", + "scope": 1195, + "src": "12403:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16156,10 +15496,10 @@ "typeString": "address" }, "typeName": { - "id": 1235, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13424:7:0", + "src": "12403:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16170,11 +15510,11 @@ }, { "constant": false, - "id": 1238, + "id": 1190, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13436:13:0", + "scope": 1195, + "src": "12415:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16182,10 +15522,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1237, + "id": 1189, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13436:7:0", + "src": "12415:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16195,20 +15535,20 @@ "visibility": "internal" } ], - "src": "13409:41:0" + "src": "12388:41:0" }, "payable": false, "returnParameters": { - "id": 1242, + "id": 1194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1193, "name": "", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13467:4:0", + "scope": 1195, + "src": "12446:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16216,10 +15556,10 @@ "typeString": "bool" }, "typeName": { - "id": 1240, + "id": 1192, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13467:4:0", + "src": "12446:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16229,10 +15569,10 @@ "visibility": "internal" } ], - "src": "13466:6:0" + "src": "12445:6:0" }, - "scope": 1261, - "src": "13388:85:0", + "scope": 1213, + "src": "12367:85:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -16240,7 +15580,7 @@ { "body": null, "documentation": null, - "id": 1252, + "id": 1204, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -16248,16 +15588,16 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1248, + "id": 1200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1245, + "id": 1197, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13493:15:0", + "scope": 1204, + "src": "12472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16265,10 +15605,10 @@ "typeString": "address" }, "typeName": { - "id": 1244, + "id": 1196, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13493:7:0", + "src": "12472:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16279,11 +15619,11 @@ }, { "constant": false, - "id": 1247, + "id": 1199, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13510:13:0", + "scope": 1204, + "src": "12489:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16291,10 +15631,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1246, + "id": 1198, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13510:7:0", + "src": "12489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16304,20 +15644,20 @@ "visibility": "internal" } ], - "src": "13492:32:0" + "src": "12471:32:0" }, "payable": false, "returnParameters": { - "id": 1251, + "id": 1203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1202, "name": "", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13541:4:0", + "scope": 1204, + "src": "12520:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16325,10 +15665,10 @@ "typeString": "bool" }, "typeName": { - "id": 1249, + "id": 1201, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13541:4:0", + "src": "12520:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16338,10 +15678,10 @@ "visibility": "internal" } ], - "src": "13540:6:0" + "src": "12519:6:0" }, - "scope": 1261, - "src": "13476:71:0", + "scope": 1213, + "src": "12455:71:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -16349,21 +15689,21 @@ { "anonymous": false, "documentation": null, - "id": 1260, + "id": 1212, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1259, + "id": 1211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1254, + "id": 1206, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13565:21:0", + "scope": 1212, + "src": "12544:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16371,10 +15711,10 @@ "typeString": "address" }, "typeName": { - "id": 1253, + "id": 1205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13565:7:0", + "src": "12544:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16385,12 +15725,12 @@ }, { "constant": false, - "id": 1256, + "id": 1208, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13588:23:0", + "scope": 1212, + "src": "12567:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16398,10 +15738,10 @@ "typeString": "address" }, "typeName": { - "id": 1255, + "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13588:7:0", + "src": "12567:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16412,12 +15752,12 @@ }, { "constant": false, - "id": 1258, + "id": 1210, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13613:13:0", + "scope": 1212, + "src": "12592:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16425,10 +15765,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1257, + "id": 1209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13613:7:0", + "src": "12592:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16438,13 +15778,13 @@ "visibility": "internal" } ], - "src": "13564:63:0" + "src": "12543:63:0" }, - "src": "13550:78:0" + "src": "12529:78:0" } ], - "scope": 1394, - "src": "13267:363:0" + "scope": 1346, + "src": "12246:363:0" }, { "baseContracts": [], @@ -16452,31 +15792,31 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 1393, + "id": 1345, "linearizedBaseContracts": [ - 1393 + 1345 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1290, + "id": 1242, "nodeType": "Block", - "src": "13817:90:0", + "src": "12796:90:0", "statements": [ { "assignments": [ - 1271 + 1223 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1223, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13827:9:0", + "scope": 1243, + "src": "12806:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16484,10 +15824,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 1222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13827:7:0", + "src": "12806:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16497,26 +15837,26 @@ "visibility": "internal" } ], - "id": 1275, + "id": 1227, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1274, + "id": 1226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1272, + "id": 1224, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13839:1:0", + "referencedDeclaration": 1215, + "src": "12818:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16526,25 +15866,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1273, + "id": 1225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13843:1:0", + "referencedDeclaration": 1217, + "src": "12822:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13839:5:0", + "src": "12818:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13827:17:0" + "src": "12806:17:0" }, { "expression": { @@ -16556,7 +15896,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1285, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, @@ -16567,19 +15907,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1279, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1277, + "id": 1229, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13861:1:0", + "referencedDeclaration": 1215, + "src": "12840:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16590,14 +15930,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1278, + "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13866:1:0", + "src": "12845:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -16605,7 +15945,7 @@ }, "value": "0" }, - "src": "13861:6:0", + "src": "12840:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16619,7 +15959,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1284, + "id": 1236, "isConstant": false, "isLValue": false, "isPure": false, @@ -16630,19 +15970,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1282, + "id": 1234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1280, + "id": 1232, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13871:1:0", + "referencedDeclaration": 1223, + "src": "12850:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16652,18 +15992,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1281, + "id": 1233, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13875:1:0", + "referencedDeclaration": 1215, + "src": "12854:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:5:0", + "src": "12850:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16673,24 +16013,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1283, + "id": 1235, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13880:1:0", + "referencedDeclaration": 1217, + "src": "12859:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:10:0", + "src": "12850:10:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13861:20:0", + "src": "12840:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16704,18 +16044,18 @@ "typeString": "bool" } ], - "id": 1276, + "id": 1228, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "13854:6:0", + "referencedDeclaration": 1489, + "src": "12833:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, @@ -16723,39 +16063,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13854:28:0", + "src": "12833:28:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 1239, "nodeType": "ExpressionStatement", - "src": "13854:28:0" + "src": "12833:28:0" }, { "expression": { "argumentTypes": null, - "id": 1288, + "id": 1240, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13899:1:0", + "referencedDeclaration": 1223, + "src": "12878:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1269, - "id": 1289, + "functionReturnParameters": 1221, + "id": 1241, "nodeType": "Return", - "src": "13892:8:0" + "src": "12871:8:0" } ] }, "documentation": null, - "id": 1291, + "id": 1243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -16763,16 +16103,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 1266, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1263, + "id": 1215, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13759:9:0", + "scope": 1243, + "src": "12738:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16780,10 +16120,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1214, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13759:7:0", + "src": "12738:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16794,11 +16134,11 @@ }, { "constant": false, - "id": 1265, + "id": 1217, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13770:9:0", + "scope": 1243, + "src": "12749:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16806,10 +16146,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1264, + "id": 1216, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13770:7:0", + "src": "12749:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16819,20 +16159,20 @@ "visibility": "internal" } ], - "src": "13758:22:0" + "src": "12737:22:0" }, "payable": false, "returnParameters": { - "id": 1269, + "id": 1221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1268, + "id": 1220, "name": "", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13808:7:0", + "scope": 1243, + "src": "12787:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16840,10 +16180,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1267, + "id": 1219, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13808:7:0", + "src": "12787:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16853,32 +16193,32 @@ "visibility": "internal" } ], - "src": "13807:9:0" + "src": "12786:9:0" }, - "scope": 1393, - "src": "13746:161:0", + "scope": 1345, + "src": "12725:161:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1308, + "id": 1260, "nodeType": "Block", - "src": "13984:216:0", + "src": "12963:216:0", "statements": [ { "assignments": [ - 1301 + 1253 ], "declarations": [ { "constant": false, - "id": 1301, + "id": 1253, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "14072:9:0", + "scope": 1261, + "src": "13051:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16886,10 +16226,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1300, + "id": 1252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14072:7:0", + "src": "13051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16899,26 +16239,26 @@ "visibility": "internal" } ], - "id": 1305, + "id": 1257, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1304, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1302, + "id": 1254, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1293, - "src": "14084:1:0", + "referencedDeclaration": 1245, + "src": "13063:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16928,49 +16268,49 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1303, + "id": 1255, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1295, - "src": "14088:1:0", + "referencedDeclaration": 1247, + "src": "13067:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14084:5:0", + "src": "13063:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14072:17:0" + "src": "13051:17:0" }, { "expression": { "argumentTypes": null, - "id": 1306, + "id": 1258, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "14192:1:0", + "referencedDeclaration": 1253, + "src": "13171:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1299, - "id": 1307, + "functionReturnParameters": 1251, + "id": 1259, "nodeType": "Return", - "src": "14185:8:0" + "src": "13164:8:0" } ] }, "documentation": null, - "id": 1309, + "id": 1261, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -16978,16 +16318,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 1296, + "id": 1248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1293, + "id": 1245, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13926:9:0", + "scope": 1261, + "src": "12905:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16995,10 +16335,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1292, + "id": 1244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13926:7:0", + "src": "12905:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17009,11 +16349,11 @@ }, { "constant": false, - "id": 1295, + "id": 1247, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13937:9:0", + "scope": 1261, + "src": "12916:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17021,10 +16361,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1294, + "id": 1246, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13937:7:0", + "src": "12916:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17034,20 +16374,20 @@ "visibility": "internal" } ], - "src": "13925:22:0" + "src": "12904:22:0" }, "payable": false, "returnParameters": { - "id": 1299, + "id": 1251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1250, "name": "", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13975:7:0", + "scope": 1261, + "src": "12954:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17055,10 +16395,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1297, + "id": 1249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13975:7:0", + "src": "12954:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17068,19 +16408,19 @@ "visibility": "internal" } ], - "src": "13974:9:0" + "src": "12953:9:0" }, - "scope": 1393, - "src": "13913:287:0", + "scope": 1345, + "src": "12892:287:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1328, + "id": 1280, "nodeType": "Block", - "src": "14277:53:0", + "src": "13256:53:0", "statements": [ { "expression": { @@ -17092,19 +16432,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1321, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1319, + "id": 1271, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14294:1:0", + "referencedDeclaration": 1265, + "src": "13273:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17114,18 +16454,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 1320, + "id": 1272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14299:1:0", + "referencedDeclaration": 1263, + "src": "13278:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14294:6:0", + "src": "13273:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17139,18 +16479,18 @@ "typeString": "bool" } ], - "id": 1318, + "id": 1270, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14287:6:0", + "referencedDeclaration": 1489, + "src": "13266:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1322, + "id": 1274, "isConstant": false, "isLValue": false, "isPure": false, @@ -17158,15 +16498,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14287:14:0", + "src": "13266:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1323, + "id": 1275, "nodeType": "ExpressionStatement", - "src": "14287:14:0" + "src": "13266:14:0" }, { "expression": { @@ -17175,19 +16515,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1326, + "id": 1278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1324, + "id": 1276, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14318:1:0", + "referencedDeclaration": 1263, + "src": "13297:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17197,32 +16537,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1325, + "id": 1277, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14322:1:0", + "referencedDeclaration": 1265, + "src": "13301:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14318:5:0", + "src": "13297:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1317, - "id": 1327, + "functionReturnParameters": 1269, + "id": 1279, "nodeType": "Return", - "src": "14311:12:0" + "src": "13290:12:0" } ] }, "documentation": null, - "id": 1329, + "id": 1281, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17230,16 +16570,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 1314, + "id": 1266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1311, + "id": 1263, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14219:9:0", + "scope": 1281, + "src": "13198:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17247,10 +16587,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1310, + "id": 1262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14219:7:0", + "src": "13198:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17261,11 +16601,11 @@ }, { "constant": false, - "id": 1313, + "id": 1265, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14230:9:0", + "scope": 1281, + "src": "13209:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17273,10 +16613,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1312, + "id": 1264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14230:7:0", + "src": "13209:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17286,20 +16626,20 @@ "visibility": "internal" } ], - "src": "14218:22:0" + "src": "13197:22:0" }, "payable": false, "returnParameters": { - "id": 1317, + "id": 1269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 1268, "name": "", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14268:7:0", + "scope": 1281, + "src": "13247:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17307,10 +16647,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1315, + "id": 1267, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14268:7:0", + "src": "13247:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17320,32 +16660,32 @@ "visibility": "internal" } ], - "src": "14267:9:0" + "src": "13246:9:0" }, - "scope": 1393, - "src": "14206:124:0", + "scope": 1345, + "src": "13185:124:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1352, + "id": 1304, "nodeType": "Block", - "src": "14407:76:0", + "src": "13386:76:0", "statements": [ { "assignments": [ - 1339 + 1291 ], "declarations": [ { "constant": false, - "id": 1339, + "id": 1291, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14417:9:0", + "scope": 1305, + "src": "13396:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17353,10 +16693,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1338, + "id": 1290, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14417:7:0", + "src": "13396:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17366,26 +16706,26 @@ "visibility": "internal" } ], - "id": 1343, + "id": 1295, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1342, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1340, + "id": 1292, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14429:1:0", + "referencedDeclaration": 1283, + "src": "13408:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17395,25 +16735,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1341, + "id": 1293, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "14433:1:0", + "referencedDeclaration": 1285, + "src": "13412:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14429:5:0", + "src": "13408:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14417:17:0" + "src": "13396:17:0" }, { "expression": { @@ -17425,19 +16765,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1347, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1345, + "id": 1297, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14451:1:0", + "referencedDeclaration": 1291, + "src": "13430:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17447,18 +16787,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1346, + "id": 1298, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14456:1:0", + "referencedDeclaration": 1283, + "src": "13435:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14451:6:0", + "src": "13430:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17472,18 +16812,18 @@ "typeString": "bool" } ], - "id": 1344, + "id": 1296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14444:6:0", + "referencedDeclaration": 1489, + "src": "13423:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1348, + "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, @@ -17491,39 +16831,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14444:14:0", + "src": "13423:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1349, + "id": 1301, "nodeType": "ExpressionStatement", - "src": "14444:14:0" + "src": "13423:14:0" }, { "expression": { "argumentTypes": null, - "id": 1350, + "id": 1302, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14475:1:0", + "referencedDeclaration": 1291, + "src": "13454:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1337, - "id": 1351, + "functionReturnParameters": 1289, + "id": 1303, "nodeType": "Return", - "src": "14468:8:0" + "src": "13447:8:0" } ] }, "documentation": null, - "id": 1353, + "id": 1305, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17531,16 +16871,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 1334, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1331, + "id": 1283, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14349:9:0", + "scope": 1305, + "src": "13328:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17548,10 +16888,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1330, + "id": 1282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14349:7:0", + "src": "13328:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17562,11 +16902,11 @@ }, { "constant": false, - "id": 1333, + "id": 1285, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14360:9:0", + "scope": 1305, + "src": "13339:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17574,10 +16914,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14360:7:0", + "src": "13339:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17587,20 +16927,20 @@ "visibility": "internal" } ], - "src": "14348:22:0" + "src": "13327:22:0" }, "payable": false, "returnParameters": { - "id": 1337, + "id": 1289, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1336, + "id": 1288, "name": "", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14398:7:0", + "scope": 1305, + "src": "13377:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17608,10 +16948,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1335, + "id": 1287, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14398:7:0", + "src": "13377:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17621,32 +16961,32 @@ "visibility": "internal" } ], - "src": "14397:9:0" + "src": "13376:9:0" }, - "scope": 1393, - "src": "14336:147:0", + "scope": 1345, + "src": "13315:147:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1391, + "id": 1343, "nodeType": "Block", - "src": "14768:257:0", + "src": "13747:257:0", "statements": [ { "assignments": [ - 1365 + 1317 ], "declarations": [ { "constant": false, - "id": 1365, + "id": 1317, "name": "_numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14826:18:0", + "scope": 1344, + "src": "13805:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17654,10 +16994,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1364, + "id": 1316, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14826:7:0", + "src": "13805:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17667,18 +17007,18 @@ "visibility": "internal" } ], - "id": 1375, + "id": 1327, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1367, + "id": 1319, "name": "numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1355, - "src": "14851:9:0", + "referencedDeclaration": 1307, + "src": "13830:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17690,7 +17030,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1373, + "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, @@ -17698,14 +17038,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1368, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14862:2:0", + "src": "13841:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -17724,19 +17064,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1371, + "id": 1323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1369, + "id": 1321, "name": "precision", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "14869:9:0", + "referencedDeclaration": 1311, + "src": "13848:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17747,14 +17087,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1370, + "id": 1322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14879:1:0", + "src": "13858:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -17762,27 +17102,27 @@ }, "value": "1" }, - "src": "14869:11:0", + "src": "13848:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1372, + "id": 1324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14868:13:0", + "src": "13847:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14862:19:0", + "src": "13841:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17800,18 +17140,18 @@ "typeString": "uint256" } ], - "id": 1366, + "id": 1318, "name": "mul", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "14847:3:0", + "referencedDeclaration": 1243, + "src": "13826:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1374, + "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, @@ -17819,27 +17159,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14847:35:0", + "src": "13826:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14826:56:0" + "src": "13805:56:0" }, { "assignments": [ - 1377 + 1329 ], "declarations": [ { "constant": false, - "id": 1377, + "id": 1329, "name": "_quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14931:17:0", + "scope": 1344, + "src": "13910:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17847,10 +17187,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1376, + "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14931:7:0", + "src": "13910:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17860,14 +17200,14 @@ "visibility": "internal" } ], - "id": 1387, + "id": 1339, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1386, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, @@ -17881,7 +17221,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1383, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": false, @@ -17891,12 +17231,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1379, + "id": 1331, "name": "_numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "14956:10:0", + "referencedDeclaration": 1317, + "src": "13935:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17904,12 +17244,12 @@ }, { "argumentTypes": null, - "id": 1380, + "id": 1332, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1357, - "src": "14968:11:0", + "referencedDeclaration": 1309, + "src": "13947:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17927,18 +17267,18 @@ "typeString": "uint256" } ], - "id": 1378, + "id": 1330, "name": "div", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "14952:3:0", + "referencedDeclaration": 1261, + "src": "13931:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1381, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -17946,7 +17286,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14952:28:0", + "src": "13931:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17957,14 +17297,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "35", - "id": 1382, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14983:1:0", + "src": "13962:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_5_by_1", @@ -17972,21 +17312,21 @@ }, "value": "5" }, - "src": "14952:32:0", + "src": "13931:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1384, + "id": 1336, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14951:34:0", + "src": "13930:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17997,14 +17337,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1385, + "id": 1337, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14988:2:0", + "src": "13967:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -18012,14 +17352,14 @@ }, "value": "10" }, - "src": "14951:39:0", + "src": "13930:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14931:59:0" + "src": "13910:59:0" }, { "expression": { @@ -18027,40 +17367,40 @@ "components": [ { "argumentTypes": null, - "id": 1388, + "id": 1340, "name": "_quotient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "15008:9:0", + "referencedDeclaration": 1329, + "src": "13987:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1389, + "id": 1341, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "15007:11:0", + "src": "13986:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1363, - "id": 1390, + "functionReturnParameters": 1315, + "id": 1342, "nodeType": "Return", - "src": "15000:18:0" + "src": "13979:18:0" } ] }, "documentation": null, - "id": 1392, + "id": 1344, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -18068,16 +17408,16 @@ "name": "percent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1360, + "id": 1312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1355, + "id": 1307, "name": "numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14665:17:0", + "scope": 1344, + "src": "13644:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18085,10 +17425,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1354, + "id": 1306, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14665:7:0", + "src": "13644:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18099,11 +17439,11 @@ }, { "constant": false, - "id": 1357, + "id": 1309, "name": "denominator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14684:19:0", + "scope": 1344, + "src": "13663:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18111,10 +17451,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1356, + "id": 1308, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14684:7:0", + "src": "13663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18125,11 +17465,11 @@ }, { "constant": false, - "id": 1359, + "id": 1311, "name": "precision", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14705:17:0", + "scope": 1344, + "src": "13684:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18137,10 +17477,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1358, + "id": 1310, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14705:7:0", + "src": "13684:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18150,20 +17490,20 @@ "visibility": "internal" } ], - "src": "14664:59:0" + "src": "13643:59:0" }, "payable": false, "returnParameters": { - "id": 1363, + "id": 1315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1362, + "id": 1314, "name": "quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14750:16:0", + "scope": 1344, + "src": "13729:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18171,10 +17511,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1361, + "id": 1313, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14750:7:0", + "src": "13729:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18184,41 +17524,38 @@ "visibility": "internal" } ], - "src": "14749:18:0" + "src": "13728:18:0" }, - "scope": 1393, - "src": "14648:377:0", + "scope": 1345, + "src": "13627:377:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1394, - "src": "13723:1304:0" + "scope": 1346, + "src": "12702:1304:0" } ], - "src": "0:15029:0" + "src": "0:14008:0" }, "legacyAST": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "exportedSymbols": { "Doneth": [ - 1194 + 1146 ], "ERC20": [ - 1261 + 1213 ], "ERC20Basic": [ - 1221 - ], - "Ownable": [ - 48 + 1173 ], "SafeMath": [ - 1393 + 1345 ] }, - "id": 1394, + "id": 1346, "nodeType": "SourceUnit", "nodes": [ { @@ -18238,20 +17575,20 @@ "contractKind": "contract", "documentation": "@title Doneth (Doneth)\n@dev Doneth is a contract that allows shared access to funds\nin the form of Ether and ERC20 tokens. It is especially relevant\nto donation based projects. The admins of the contract determine \nwho is a member, and each member gets a number of shares. The \nnumber of shares each member has determines how much Ether/ERC20 \nthe member can withdraw from the contract.", "fullyImplemented": true, - "id": 48, + "id": 1146, "linearizedBaseContracts": [ - 48 + 1146 ], - "name": "Ownable", + "name": "Doneth", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 3, - "name": "owner", + "name": "implementation", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "640:20:0", + "scope": 1146, + "src": "467:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18262,7 +17599,33 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "640:7:0", + "src": "467:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1146, + "src": "557:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18273,26 +17636,26 @@ }, { "body": { - "id": 11, + "id": 13, "nodeType": "Block", - "src": "693:34:0", + "src": "610:34:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 9, + "id": 11, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 6, + "id": 8, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "703:5:0", + "referencedDeclaration": 5, + "src": "620:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18304,18 +17667,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 7, + "id": 9, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "711:2:0", + "referencedDeclaration": 1512, + "src": "628:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 8, + "id": 10, "isConstant": false, "isLValue": false, "isPure": false, @@ -18323,56 +17686,56 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "711:9:0", + "src": "628:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "703:17:0", + "src": "620:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 10, + "id": 12, "nodeType": "ExpressionStatement", - "src": "703:17:0" + "src": "620:17:0" } ] }, "documentation": null, - "id": 12, + "id": 14, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 4, + "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "683:2:0" + "src": "600:2:0" }, "payable": false, "returnParameters": { - "id": 5, + "id": 7, "nodeType": "ParameterList", "parameters": [], - "src": "693:0:0" + "src": "610:0:0" }, - "scope": 48, - "src": "667:60:0", + "scope": 1146, + "src": "584:60:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 27, + "id": 29, "nodeType": "Block", - "src": "754:78:0", + "src": "671:78:0", "statements": [ { "expression": { @@ -18384,7 +17747,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 23, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -18395,7 +17758,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18, + "id": 20, "isConstant": false, "isLValue": false, "isPure": false, @@ -18404,18 +17767,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 15, + "id": 17, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "772:3:0", + "referencedDeclaration": 1500, + "src": "689:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 16, + "id": 18, "isConstant": false, "isLValue": false, "isPure": false, @@ -18423,7 +17786,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "772:10:0", + "src": "689:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18433,18 +17796,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 17, + "id": 19, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "786:5:0", + "referencedDeclaration": 5, + "src": "703:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "772:19:0", + "src": "689:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18458,7 +17821,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 22, + "id": 24, "isConstant": false, "isLValue": false, "isPure": false, @@ -18467,18 +17830,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 19, + "id": 21, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "795:2:0", + "referencedDeclaration": 1512, + "src": "712:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 20, + "id": 22, "isConstant": false, "isLValue": false, "isPure": false, @@ -18486,7 +17849,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "795:9:0", + "src": "712:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18496,24 +17859,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 21, + "id": 23, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "808:5:0", + "referencedDeclaration": 5, + "src": "725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "795:18:0", + "src": "712:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "772:41:0", + "src": "689:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18527,21 +17890,21 @@ "typeString": "bool" } ], - "id": 14, + "id": 16, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1514, - "src": "764:7:0", + "referencedDeclaration": 1503, + "src": "681:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 24, + "id": 26, "isConstant": false, "isLValue": false, "isPure": false, @@ -18549,41 +17912,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "764:50:0", + "src": "681:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25, + "id": 27, "nodeType": "ExpressionStatement", - "src": "764:50:0" + "src": "681:50:0" }, { - "id": 26, + "id": 28, "nodeType": "PlaceholderStatement", - "src": "824:1:0" + "src": "741:1:0" } ] }, "documentation": null, - "id": 28, + "id": 30, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 13, + "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "751:2:0" + "src": "668:2:0" }, - "src": "733:99:0", + "src": "650:99:0", "visibility": "internal" }, { "body": { - "id": 46, + "id": 48, "nodeType": "Block", - "src": "900:85:0", + "src": "817:85:0", "statements": [ { "condition": { @@ -18592,19 +17955,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 39, + "id": 41, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 35, + "id": 37, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "914:8:0", + "referencedDeclaration": 32, + "src": "831:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18618,14 +17981,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 37, + "id": 39, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "934:1:0", + "src": "851:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -18641,20 +18004,20 @@ "typeString": "int_const 0" } ], - "id": 36, + "id": 38, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "926:7:0", + "src": "843:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 38, + "id": 40, "isConstant": false, "isLValue": false, "isPure": true, @@ -18662,43 +18025,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "926:10:0", + "src": "843:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "914:22:0", + "src": "831:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 45, + "id": 47, "nodeType": "IfStatement", - "src": "910:69:0", + "src": "827:69:0", "trueBody": { - "id": 44, + "id": 46, "nodeType": "Block", - "src": "938:41:0", + "src": "855:41:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 42, + "id": 44, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 40, + "id": 42, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "952:5:0", + "referencedDeclaration": 5, + "src": "869:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18708,26 +18071,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 41, + "id": 43, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "960:8:0", + "referencedDeclaration": 32, + "src": "877:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "952:16:0", + "src": "869:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 43, + "id": 45, "nodeType": "ExpressionStatement", - "src": "952:16:0" + "src": "869:16:0" } ] } @@ -18735,44 +18098,44 @@ ] }, "documentation": null, - "id": 47, + "id": 49, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 33, + "id": 35, "modifierName": { "argumentTypes": null, - "id": 32, + "id": 34, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "883:9:0", + "referencedDeclaration": 30, + "src": "800:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "883:9:0" + "src": "800:9:0" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 31, + "id": 33, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30, + "id": 32, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 47, - "src": "865:16:0", + "scope": 49, + "src": "782:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18780,10 +18143,10 @@ "typeString": "address" }, "typeName": { - "id": 29, + "id": 31, "name": "address", "nodeType": "ElementaryTypeName", - "src": "865:7:0", + "src": "782:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18793,81 +18156,42 @@ "visibility": "internal" } ], - "src": "864:18:0" + "src": "781:18:0" }, "payable": false, "returnParameters": { - "id": 34, + "id": 36, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:0" + "src": "817:0:0" }, - "scope": 48, - "src": "838:147:0", + "scope": 1146, + "src": "755:147:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" - } - ], - "scope": 1394, - "src": "617:370:0" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 49, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "1008:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$48", - "typeString": "contract Ownable" - } - }, - "id": 50, - "nodeType": "InheritanceSpecifier", - "src": "1008:7:0" - } - ], - "contractDependencies": [ - 48 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1194, - "linearizedBaseContracts": [ - 1194, - 48 - ], - "name": "Doneth", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "id": 53, + "id": 52, "libraryName": { "contractScope": null, - "id": 51, + "id": 50, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1393, - "src": "1028:8:0", + "referencedDeclaration": 1345, + "src": "914:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$1393", + "typeIdentifier": "t_contract$_SafeMath_$1345", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1022:27:0", + "src": "908:27:0", "typeName": { - "id": 52, + "id": 51, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1041:7:0", + "src": "927:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18876,11 +18200,11 @@ }, { "constant": false, - "id": 55, + "id": 54, "name": "initialized", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1057:23:0", + "scope": 1146, + "src": "943:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18888,10 +18212,10 @@ "typeString": "bool" }, "typeName": { - "id": 54, + "id": 53, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1057:4:0", + "src": "943:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18902,11 +18226,11 @@ }, { "constant": false, - "id": 57, + "id": 56, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1115:18:0", + "scope": 1146, + "src": "1001:18:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18914,10 +18238,10 @@ "typeString": "string" }, "typeName": { - "id": 56, + "id": 55, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1115:6:0", + "src": "1001:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -18928,11 +18252,11 @@ }, { "constant": false, - "id": 59, + "id": 58, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1186:26:0", + "scope": 1146, + "src": "1072:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18940,10 +18264,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 57, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1186:7:0", + "src": "1072:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18954,11 +18278,11 @@ }, { "constant": false, - "id": 61, + "id": 60, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1265:29:0", + "scope": 1146, + "src": "1151:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18966,10 +18290,10 @@ "typeString": "uint256" }, "typeName": { - "id": 60, + "id": 59, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1265:7:0", + "src": "1151:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18980,11 +18304,11 @@ }, { "constant": false, - "id": 63, + "id": 62, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1354:33:0", + "scope": 1146, + "src": "1240:33:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18992,10 +18316,10 @@ "typeString": "uint256" }, "typeName": { - "id": 62, + "id": 61, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1354:7:0", + "src": "1240:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19006,11 +18330,11 @@ }, { "constant": true, - "id": 66, + "id": 65, "name": "PRECISION", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1454:38:0", + "scope": 1146, + "src": "1340:38:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19018,10 +18342,10 @@ "typeString": "uint256" }, "typeName": { - "id": 64, + "id": 63, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1454:7:0", + "src": "1340:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19030,14 +18354,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 65, + "id": 64, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1490:2:0", + "src": "1376:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -19049,11 +18373,11 @@ }, { "constant": false, - "id": 68, + "id": 67, "name": "sharedExpense", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1546:28:0", + "scope": 1146, + "src": "1432:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19061,10 +18385,10 @@ "typeString": "uint256" }, "typeName": { - "id": 67, + "id": 66, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1546:7:0", + "src": "1432:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19075,11 +18399,11 @@ }, { "constant": false, - "id": 70, + "id": 69, "name": "sharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1580:37:0", + "scope": 1146, + "src": "1466:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19087,10 +18411,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 68, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1580:7:0", + "src": "1466:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19101,44 +18425,44 @@ }, { "constant": false, - "id": 74, + "id": 73, "name": "members", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1661:41:0", + "scope": 1146, + "src": "1547:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "typeName": { - "id": 73, + "id": 72, "keyType": { - "id": 71, + "id": 70, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1669:7:0", + "src": "1555:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1661:26:0", + "src": "1547:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "valueType": { "contractScope": null, - "id": 72, + "id": 71, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "1680:6:0", + "referencedDeclaration": 91, + "src": "1566:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } } @@ -19148,11 +18472,11 @@ }, { "constant": false, - "id": 77, + "id": 76, "name": "memberKeys", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1708:27:0", + "scope": 1146, + "src": "1594:27:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19161,19 +18485,19 @@ }, "typeName": { "baseType": { - "id": 75, + "id": 74, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1708:7:0", + "src": "1594:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 76, + "id": 75, "length": null, "nodeType": "ArrayTypeName", - "src": "1708:9:0", + "src": "1594:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -19184,15 +18508,15 @@ }, { "canonicalName": "Doneth.Member", - "id": 92, + "id": 91, "members": [ { "constant": false, - "id": 79, + "id": 78, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1765:11:0", + "scope": 91, + "src": "1651:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19200,10 +18524,10 @@ "typeString": "bool" }, "typeName": { - "id": 78, + "id": 77, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1765:4:0", + "src": "1651:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19214,11 +18538,11 @@ }, { "constant": false, - "id": 81, + "id": 80, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1786:10:0", + "scope": 91, + "src": "1672:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19226,10 +18550,10 @@ "typeString": "bool" }, "typeName": { - "id": 80, + "id": 79, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1786:4:0", + "src": "1672:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19240,11 +18564,11 @@ }, { "constant": false, - "id": 83, + "id": 82, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1806:14:0", + "scope": 91, + "src": "1692:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19252,10 +18576,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 81, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1806:7:0", + "src": "1692:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19266,11 +18590,11 @@ }, { "constant": false, - "id": 85, + "id": 84, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1830:17:0", + "scope": 91, + "src": "1716:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19278,10 +18602,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 83, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1830:7:0", + "src": "1716:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19292,11 +18616,11 @@ }, { "constant": false, - "id": 87, + "id": 86, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1857:17:0", + "scope": 91, + "src": "1743:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19304,10 +18628,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 85, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1857:6:0", + "src": "1743:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -19318,11 +18642,11 @@ }, { "constant": false, - "id": 91, + "id": 90, "name": "tokensWithdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1884:43:0", + "scope": 91, + "src": "1770:43:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19330,28 +18654,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 90, + "id": 89, "keyType": { - "id": 88, + "id": 87, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1892:7:0", + "src": "1778:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1884:27:0", + "src": "1770:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 89, + "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1903:7:0", + "src": "1789:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19364,161 +18688,60 @@ ], "name": "Member", "nodeType": "StructDefinition", - "scope": 1194, - "src": "1741:193:0", + "scope": 1146, + "src": "1627:193:0", "visibility": "public" }, { "constant": false, - "id": 96, + "id": 95, "name": "tokens", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2010:39:0", + "scope": 1146, + "src": "1896:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 95, + "id": 94, "keyType": { - "id": 93, + "id": 92, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:7:0", + "src": "1904:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2010:25:0", + "src": "1896:27:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "valueType": { - "contractScope": null, - "id": 94, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 104, - "src": "2029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage_ptr", - "typeString": "struct Doneth.Token" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "tokenKeys", - "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2055:26:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", + "id": 93, + "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2055:7:0", + "src": "1915:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2055:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" } }, "value": null, "visibility": "public" }, - { - "canonicalName": "Doneth.Token", - "id": 104, - "members": [ - { - "constant": false, - "id": 101, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2110:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 100, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2110:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "name": "totalWithdrawn", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2131:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 102, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2131:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Token", - "nodeType": "StructDefinition", - "scope": 1194, - "src": "2087:73:0", - "visibility": "public" - }, { "body": { - "id": 223, + "id": 179, "nodeType": "Block", - "src": "2363:911:0", + "src": "1967:484:0", "statements": [ { "expression": { @@ -19526,7 +18749,7 @@ "arguments": [ { "argumentTypes": null, - "id": 113, + "id": 100, "isConstant": false, "isLValue": false, "isPure": false, @@ -19534,15 +18757,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2381:12:0", + "src": "1985:12:0", "subExpression": { "argumentTypes": null, - "id": 112, + "id": 99, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2382:11:0", + "referencedDeclaration": 54, + "src": "1986:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19552,24 +18775,6 @@ "typeIdentifier": "t_bool", "typeString": "bool" } - }, - { - "argumentTypes": null, - "hexValue": "414c524541445920494e495449414c495a4544", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2395:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" - }, - "value": "ALREADY INITIALIZED" } ], "expression": { @@ -19577,27 +18782,23 @@ { "typeIdentifier": "t_bool", "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" } ], - "id": 111, + "id": 98, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1515, - "src": "2373:7:0", + "referencedDeclaration": 1503, + "src": "1977:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 115, + "id": 101, "isConstant": false, "isLValue": false, "isPure": false, @@ -19605,32 +18806,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2373:44:0", + "src": "1977:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 116, + "id": 102, "nodeType": "ExpressionStatement", - "src": "2373:44:0" + "src": "1977:21:0" }, { "expression": { "argumentTypes": null, - "id": 119, + "id": 105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 117, + "id": 103, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2427:11:0", + "referencedDeclaration": 54, + "src": "2008:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19641,14 +18842,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 118, + "id": 104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2441:4:0", + "src": "2022:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -19656,32 +18857,32 @@ }, "value": "true" }, - "src": "2427:18:0", + "src": "2008:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 120, + "id": 106, "nodeType": "ExpressionStatement", - "src": "2427:18:0" + "src": "2008:18:0" }, { "expression": { "argumentTypes": null, - "id": 124, + "id": 110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 121, + "id": 107, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "2455:5:0", + "referencedDeclaration": 5, + "src": "2037:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19693,18 +18894,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 122, + "id": 108, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2463:2:0", + "referencedDeclaration": 1512, + "src": "2045:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 123, + "id": 109, "isConstant": false, "isLValue": false, "isPure": false, @@ -19712,451 +18913,109 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2463:9:0", + "src": "2045:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2455:17:0", + "src": "2037:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 125, + "id": 111, "nodeType": "ExpressionStatement", - "src": "2455:17:0" + "src": "2037:17:0" }, { "expression": { "argumentTypes": null, - "id": 129, + "id": 115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 126, + "id": 112, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "2482:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 127, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1501, - "src": "2503:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 128, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2503:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2482:33:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 130, - "nodeType": "ExpressionStatement", - "src": "2482:33:0" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 132, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2535:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2529:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2529:20:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2529:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2559:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2529:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 140, - "nodeType": "IfStatement", - "src": "2525:46:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 137, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2563:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2563:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2563:8:0" - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 142, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2591:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 141, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2585:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2585:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2585:26:0", + "referencedDeclaration": 62, + "src": "2064:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2614:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2585:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 150, - "nodeType": "IfStatement", - "src": "2581:45:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 147, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2618:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2618:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:8:0" - } - }, - { - "expression": { - "argumentTypes": null, - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 151, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "2636:4:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "argumentTypes": null, - "id": 152, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2643:13:0", + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 113, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1490, + "src": "2085:5:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "number", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2085:12:0", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "2636:20:0", + "src": "2064:33:0", "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 154, + "id": 116, "nodeType": "ExpressionStatement", - "src": "2636:20:0" + "src": "2064:33:0" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 156, + "id": 118, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2721:23:0", + "scope": 180, + "src": "2108:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 155, + "id": 117, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "2721:6:0", + "referencedDeclaration": 91, + "src": "2108:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -20164,15 +19023,15 @@ "visibility": "internal" } ], - "id": 157, + "id": 119, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "2721:23:0" + "src": "2108:23:0" }, { "expression": { "argumentTypes": null, - "id": 162, + "id": 124, "isConstant": false, "isLValue": false, "isPure": false, @@ -20181,26 +19040,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 158, + "id": 120, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2754:9:0", + "referencedDeclaration": 118, + "src": "2141:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 160, + "id": 122, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "2754:16:0", + "referencedDeclaration": 78, + "src": "2141:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20211,14 +19070,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 161, + "id": 123, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2773:4:0", + "src": "2160:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20226,20 +19085,20 @@ }, "value": "true" }, - "src": "2754:23:0", + "src": "2141:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 163, + "id": 125, "nodeType": "ExpressionStatement", - "src": "2754:23:0" + "src": "2141:23:0" }, { "expression": { "argumentTypes": null, - "id": 168, + "id": 130, "isConstant": false, "isLValue": false, "isPure": false, @@ -20248,26 +19107,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 164, + "id": 126, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2787:9:0", + "referencedDeclaration": 118, + "src": "2174:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 166, + "id": 128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "2787:15:0", + "referencedDeclaration": 80, + "src": "2174:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20278,14 +19137,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 167, + "id": 129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2805:4:0", + "src": "2192:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20293,82 +19152,20 @@ }, "value": "true" }, - "src": "2787:22:0", + "src": "2174:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "2787:22:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 170, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2819:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 172, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "memberName", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "2819:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 173, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2842:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2819:35:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 175, + "id": 131, "nodeType": "ExpressionStatement", - "src": "2819:35:0" + "src": "2174:22:0" }, { "expression": { "argumentTypes": null, - "id": 181, + "id": 137, "isConstant": false, "isLValue": false, "isPure": false, @@ -20377,34 +19174,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 176, + "id": 132, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "2865:7:0", + "referencedDeclaration": 73, + "src": "2206:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 179, + "id": 135, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 177, + "id": 133, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2873:2:0", + "referencedDeclaration": 1512, + "src": "2214:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 178, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -20412,7 +19209,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2873:9:0", + "src": "2214:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20423,9 +19220,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2865:18:0", + "src": "2206:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -20433,26 +19230,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 180, + "id": 136, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2886:9:0", + "referencedDeclaration": 118, + "src": "2227:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "2865:30:0", + "src": "2206:30:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 182, + "id": 138, "nodeType": "ExpressionStatement", - "src": "2865:30:0" + "src": "2206:30:0" }, { "expression": { @@ -20462,18 +19259,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 186, + "id": 142, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2921:2:0", + "referencedDeclaration": 1512, + "src": "2262:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 187, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -20481,7 +19278,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2921:9:0", + "src": "2262:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20497,18 +19294,18 @@ ], "expression": { "argumentTypes": null, - "id": 183, + "id": 139, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "2905:10:0", + "referencedDeclaration": 76, + "src": "2246:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 185, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -20516,13 +19313,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2905:15:0", + "src": "2246:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 188, + "id": 144, "isConstant": false, "isLValue": false, "isPure": false, @@ -20530,32 +19327,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2905:26:0", + "src": "2246:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 189, + "id": 145, "nodeType": "ExpressionStatement", - "src": "2905:26:0" + "src": "2246:26:0" }, { "expression": { "argumentTypes": null, - "id": 195, + "id": 151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 190, + "id": 146, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2981:11:0", + "referencedDeclaration": 58, + "src": "2283:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20569,14 +19366,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 193, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3011:1:0", + "src": "2313:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -20594,32 +19391,32 @@ ], "expression": { "argumentTypes": null, - "id": 191, + "id": 147, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2995:11:0", + "referencedDeclaration": 58, + "src": "2297:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 192, + "id": 148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "2995:15:0", + "referencedDeclaration": 1305, + "src": "2297:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 194, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, @@ -20627,26 +19424,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2995:18:0", + "src": "2297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2981:32:0", + "src": "2283:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 196, + "id": 152, "nodeType": "ExpressionStatement", - "src": "2981:32:0" + "src": "2283:32:0" }, { "expression": { "argumentTypes": null, - "id": 210, + "id": 166, "isConstant": false, "isLValue": false, "isPure": false, @@ -20657,34 +19454,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 197, + "id": 153, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3023:7:0", + "referencedDeclaration": 73, + "src": "2325:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 200, + "id": 156, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 198, + "id": 154, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3031:2:0", + "referencedDeclaration": 1512, + "src": "2333:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 199, + "id": 155, "isConstant": false, "isLValue": false, "isPure": false, @@ -20692,7 +19489,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3031:9:0", + "src": "2333:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20703,21 +19500,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3023:18:0", + "src": "2325:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 201, + "id": 157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3023:25:0", + "referencedDeclaration": 82, + "src": "2325:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20731,14 +19528,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 208, + "id": 164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3081:1:0", + "src": "2383:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -20760,34 +19557,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 202, + "id": 158, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3051:7:0", + "referencedDeclaration": 73, + "src": "2353:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 205, + "id": 161, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 203, + "id": 159, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3059:2:0", + "referencedDeclaration": 1512, + "src": "2361:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 204, + "id": 160, "isConstant": false, "isLValue": false, "isPure": false, @@ -20795,7 +19592,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3059:9:0", + "src": "2361:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20806,41 +19603,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3051:18:0", + "src": "2353:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 206, + "id": 162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3051:25:0", + "referencedDeclaration": 82, + "src": "2353:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 207, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "3051:29:0", + "referencedDeclaration": 1305, + "src": "2353:29:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 209, + "id": 165, "isConstant": false, "isLValue": false, "isPure": false, @@ -20848,21 +19645,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3051:32:0", + "src": "2353:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3023:60:0", + "src": "2325:60:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 211, + "id": 167, "nodeType": "ExpressionStatement", - "src": "3023:60:0" + "src": "2325:60:0" }, { "expression": { @@ -20872,18 +19669,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 213, + "id": 169, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3102:2:0", + "referencedDeclaration": 1512, + "src": "2404:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 214, + "id": 170, "isConstant": false, "isLValue": false, "isPure": false, @@ -20891,7 +19688,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3102:9:0", + "src": "2404:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20900,14 +19697,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 215, + "id": 171, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3113:1:0", + "src": "2415:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -20921,34 +19718,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 216, + "id": 172, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3116:7:0", + "referencedDeclaration": 73, + "src": "2418:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 219, + "id": 175, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 217, + "id": 173, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3124:2:0", + "referencedDeclaration": 1512, + "src": "2426:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 218, + "id": 174, "isConstant": false, "isLValue": false, "isPure": false, @@ -20956,7 +19753,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3124:9:0", + "src": "2426:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20967,21 +19764,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3116:18:0", + "src": "2418:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 220, + "id": 176, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3116:25:0", + "referencedDeclaration": 82, + "src": "2418:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21003,18 +19800,18 @@ "typeString": "uint256" } ], - "id": 212, + "id": 168, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "3093:8:0", + "referencedDeclaration": 212, + "src": "2395:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 221, + "id": 177, "isConstant": false, "isLValue": false, "isPure": false, @@ -21022,20 +19819,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3093:49:0", + "src": "2395:49:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 222, + "id": 178, "nodeType": "ExpressionStatement", - "src": "3093:49:0" + "src": "2395:49:0" } ] }, "documentation": null, - "id": 224, + "id": 180, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -21043,73 +19840,20 @@ "name": "init", "nodeType": "FunctionDefinition", "parameters": { - "id": 109, + "id": 96, "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 106, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2313:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 105, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2313:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 108, - "name": "_founderName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2335:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 107, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2335:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2312:43:0" + "parameters": [], + "src": "1957:2:0" }, "payable": false, "returnParameters": { - "id": 110, + "id": 97, "nodeType": "ParameterList", "parameters": [], - "src": "2363:0:0" + "src": "1967:0:0" }, - "scope": 1194, - "src": "2299:975:0", + "scope": 1146, + "src": "1944:507:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -21117,21 +19861,21 @@ { "anonymous": false, "documentation": null, - "id": 230, + "id": 186, "name": "Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 229, + "id": 185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 226, + "id": 182, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3294:12:0", + "scope": 186, + "src": "2471:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21139,10 +19883,10 @@ "typeString": "address" }, "typeName": { - "id": 225, + "id": 181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:0", + "src": "2471:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21153,12 +19897,12 @@ }, { "constant": false, - "id": 228, + "id": 184, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3308:10:0", + "scope": 186, + "src": "2485:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21166,10 +19910,10 @@ "typeString": "uint256" }, "typeName": { - "id": 227, + "id": 183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3308:4:0", + "src": "2485:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21179,28 +19923,28 @@ "visibility": "internal" } ], - "src": "3293:26:0" + "src": "2470:26:0" }, - "src": "3280:40:0" + "src": "2457:40:0" }, { "anonymous": false, "documentation": null, - "id": 238, + "id": 194, "name": "Withdraw", "nodeType": "EventDefinition", "parameters": { - "id": 237, + "id": 193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 232, + "id": 188, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3340:12:0", + "scope": 194, + "src": "2517:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21208,10 +19952,10 @@ "typeString": "address" }, "typeName": { - "id": 231, + "id": 187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3340:7:0", + "src": "2517:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21222,12 +19966,12 @@ }, { "constant": false, - "id": 234, + "id": 190, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3354:10:0", + "scope": 194, + "src": "2531:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21235,10 +19979,10 @@ "typeString": "uint256" }, "typeName": { - "id": 233, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3354:4:0", + "src": "2531:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21249,12 +19993,12 @@ }, { "constant": false, - "id": 236, + "id": 192, "indexed": false, "name": "newTotalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3366:25:0", + "scope": 194, + "src": "2543:25:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21262,10 +20006,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 191, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3366:7:0", + "src": "2543:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21275,28 +20019,28 @@ "visibility": "internal" } ], - "src": "3339:53:0" + "src": "2516:53:0" }, - "src": "3325:68:0" + "src": "2502:68:0" }, { "anonymous": false, "documentation": null, - "id": 248, + "id": 204, "name": "TokenWithdraw", "nodeType": "EventDefinition", "parameters": { - "id": 247, + "id": 203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 196, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3418:12:0", + "scope": 204, + "src": "2595:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21304,10 +20048,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 195, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3418:7:0", + "src": "2595:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21318,12 +20062,12 @@ }, { "constant": false, - "id": 242, + "id": 198, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3432:10:0", + "scope": 204, + "src": "2609:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21331,10 +20075,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 197, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3432:4:0", + "src": "2609:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21345,12 +20089,12 @@ }, { "constant": false, - "id": 244, + "id": 200, "indexed": false, "name": "token", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3444:13:0", + "scope": 204, + "src": "2621:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21358,10 +20102,10 @@ "typeString": "address" }, "typeName": { - "id": 243, + "id": 199, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3444:7:0", + "src": "2621:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21372,12 +20116,12 @@ }, { "constant": false, - "id": 246, + "id": 202, "indexed": false, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3459:11:0", + "scope": 204, + "src": "2636:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21385,10 +20129,10 @@ "typeString": "uint256" }, "typeName": { - "id": 245, + "id": 201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3459:4:0", + "src": "2636:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21398,28 +20142,28 @@ "visibility": "internal" } ], - "src": "3417:54:0" + "src": "2594:54:0" }, - "src": "3398:74:0" + "src": "2575:74:0" }, { "anonymous": false, "documentation": null, - "id": 256, + "id": 212, "name": "AddShare", "nodeType": "EventDefinition", "parameters": { - "id": 255, + "id": 211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 250, + "id": 206, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3492:11:0", + "scope": 212, + "src": "2669:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21427,10 +20171,10 @@ "typeString": "address" }, "typeName": { - "id": 249, + "id": 205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "2669:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21441,12 +20185,12 @@ }, { "constant": false, - "id": 252, + "id": 208, "indexed": false, "name": "addedShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3505:19:0", + "scope": 212, + "src": "2682:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21454,10 +20198,10 @@ "typeString": "uint256" }, "typeName": { - "id": 251, + "id": 207, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3505:7:0", + "src": "2682:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21468,12 +20212,12 @@ }, { "constant": false, - "id": 254, + "id": 210, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3526:22:0", + "scope": 212, + "src": "2703:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21481,10 +20225,10 @@ "typeString": "uint256" }, "typeName": { - "id": 253, + "id": 209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3526:7:0", + "src": "2703:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21494,28 +20238,28 @@ "visibility": "internal" } ], - "src": "3491:58:0" + "src": "2668:58:0" }, - "src": "3477:73:0" + "src": "2654:73:0" }, { "anonymous": false, "documentation": null, - "id": 264, + "id": 220, "name": "RemoveShare", "nodeType": "EventDefinition", "parameters": { - "id": 263, + "id": 219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 258, + "id": 214, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3573:11:0", + "scope": 220, + "src": "2750:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21523,10 +20267,10 @@ "typeString": "address" }, "typeName": { - "id": 257, + "id": 213, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3573:7:0", + "src": "2750:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21537,12 +20281,12 @@ }, { "constant": false, - "id": 260, + "id": 216, "indexed": false, "name": "removedShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3586:21:0", + "scope": 220, + "src": "2763:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21550,10 +20294,10 @@ "typeString": "uint256" }, "typeName": { - "id": 259, + "id": 215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "2763:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21564,12 +20308,12 @@ }, { "constant": false, - "id": 262, + "id": 218, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3609:22:0", + "scope": 220, + "src": "2786:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21577,10 +20321,10 @@ "typeString": "uint256" }, "typeName": { - "id": 261, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3609:7:0", + "src": "2786:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21590,28 +20334,28 @@ "visibility": "internal" } ], - "src": "3572:60:0" + "src": "2749:60:0" }, - "src": "3555:78:0" + "src": "2732:78:0" }, { "anonymous": false, "documentation": null, - "id": 272, + "id": 228, "name": "ChangePrivilege", "nodeType": "EventDefinition", "parameters": { - "id": 271, + "id": 227, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 266, + "id": 222, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3660:11:0", + "scope": 228, + "src": "2837:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21619,10 +20363,10 @@ "typeString": "address" }, "typeName": { - "id": 265, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3660:7:0", + "src": "2837:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21633,12 +20377,12 @@ }, { "constant": false, - "id": 268, + "id": 224, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3673:13:0", + "scope": 228, + "src": "2850:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21646,10 +20390,10 @@ "typeString": "bool" }, "typeName": { - "id": 267, + "id": 223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3673:4:0", + "src": "2850:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21660,12 +20404,12 @@ }, { "constant": false, - "id": 270, + "id": 226, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3688:13:0", + "scope": 228, + "src": "2865:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21673,10 +20417,10 @@ "typeString": "bool" }, "typeName": { - "id": 269, + "id": 225, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3688:4:0", + "src": "2865:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21686,28 +20430,28 @@ "visibility": "internal" } ], - "src": "3659:43:0" + "src": "2836:43:0" }, - "src": "3638:65:0" + "src": "2815:65:0" }, { "anonymous": false, "documentation": null, - "id": 278, + "id": 234, "name": "ChangeContractName", "nodeType": "EventDefinition", "parameters": { - "id": 277, + "id": 233, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 274, + "id": 230, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3733:15:0", + "scope": 234, + "src": "2910:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21715,10 +20459,10 @@ "typeString": "string" }, "typeName": { - "id": 273, + "id": 229, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3733:6:0", + "src": "2910:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21729,12 +20473,12 @@ }, { "constant": false, - "id": 276, + "id": 232, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3750:15:0", + "scope": 234, + "src": "2927:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21742,10 +20486,10 @@ "typeString": "string" }, "typeName": { - "id": 275, + "id": 231, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3750:6:0", + "src": "2927:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21755,28 +20499,28 @@ "visibility": "internal" } ], - "src": "3732:34:0" + "src": "2909:34:0" }, - "src": "3708:59:0" + "src": "2885:59:0" }, { "anonymous": false, "documentation": null, - "id": 286, + "id": 242, "name": "ChangeMemberName", "nodeType": "EventDefinition", "parameters": { - "id": 285, + "id": 241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 280, + "id": 236, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3795:11:0", + "scope": 242, + "src": "2972:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21784,10 +20528,10 @@ "typeString": "address" }, "typeName": { - "id": 279, + "id": 235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3795:7:0", + "src": "2972:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21798,12 +20542,12 @@ }, { "constant": false, - "id": 282, + "id": 238, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3808:15:0", + "scope": 242, + "src": "2985:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21811,10 +20555,10 @@ "typeString": "string" }, "typeName": { - "id": 281, + "id": 237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3808:6:0", + "src": "2985:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21825,12 +20569,12 @@ }, { "constant": false, - "id": 284, + "id": 240, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3825:15:0", + "scope": 242, + "src": "3002:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21838,10 +20582,10 @@ "typeString": "string" }, "typeName": { - "id": 283, + "id": 239, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3825:6:0", + "src": "3002:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21851,28 +20595,28 @@ "visibility": "internal" } ], - "src": "3794:47:0" + "src": "2971:47:0" }, - "src": "3772:70:0" + "src": "2949:70:0" }, { "anonymous": false, "documentation": null, - "id": 294, + "id": 250, "name": "ChangeSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 293, + "id": 249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 244, "indexed": false, "name": "contractBalance", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3873:23:0", + "scope": 250, + "src": "3050:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21880,10 +20624,10 @@ "typeString": "uint256" }, "typeName": { - "id": 287, + "id": 243, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3873:7:0", + "src": "3050:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21894,12 +20638,12 @@ }, { "constant": false, - "id": 290, + "id": 246, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3898:16:0", + "scope": 250, + "src": "3075:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21907,10 +20651,10 @@ "typeString": "uint256" }, "typeName": { - "id": 289, + "id": 245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3898:7:0", + "src": "3075:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21921,12 +20665,12 @@ }, { "constant": false, - "id": 292, + "id": 248, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3916:16:0", + "scope": 250, + "src": "3093:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21934,10 +20678,10 @@ "typeString": "uint256" }, "typeName": { - "id": 291, + "id": 247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3916:7:0", + "src": "3093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21947,28 +20691,28 @@ "visibility": "internal" } ], - "src": "3872:61:0" + "src": "3049:61:0" }, - "src": "3847:87:0" + "src": "3024:87:0" }, { "anonymous": false, "documentation": null, - "id": 304, + "id": 260, "name": "WithdrawSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 303, + "id": 259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 296, + "id": 252, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3967:12:0", + "scope": 260, + "src": "3144:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21976,10 +20720,10 @@ "typeString": "address" }, "typeName": { - "id": 295, + "id": 251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3967:7:0", + "src": "3144:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21990,12 +20734,12 @@ }, { "constant": false, - "id": 298, + "id": 254, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3981:10:0", + "scope": 260, + "src": "3158:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22003,10 +20747,10 @@ "typeString": "address" }, "typeName": { - "id": 297, + "id": 253, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3981:7:0", + "src": "3158:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22017,12 +20761,12 @@ }, { "constant": false, - "id": 300, + "id": 256, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3993:10:0", + "scope": 260, + "src": "3170:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22030,10 +20774,10 @@ "typeString": "uint256" }, "typeName": { - "id": 299, + "id": 255, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3993:4:0", + "src": "3170:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22044,12 +20788,12 @@ }, { "constant": false, - "id": 302, + "id": 258, "indexed": false, "name": "newSharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "4005:33:0", + "scope": 260, + "src": "3182:33:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22057,10 +20801,10 @@ "typeString": "uint256" }, "typeName": { - "id": 301, + "id": 257, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4005:7:0", + "src": "3182:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22070,15 +20814,15 @@ "visibility": "internal" } ], - "src": "3966:73:0" + "src": "3143:73:0" }, - "src": "3939:101:0" + "src": "3116:101:0" }, { "body": { - "id": 314, + "id": 270, "nodeType": "Block", - "src": "4126:47:0", + "src": "3303:47:0", "statements": [ { "expression": { @@ -22088,18 +20832,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 308, + "id": 264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4144:3:0", + "referencedDeclaration": 1500, + "src": "3321:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 309, + "id": 265, "isConstant": false, "isLValue": false, "isPure": false, @@ -22107,7 +20851,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4144:10:0", + "src": "3321:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22117,18 +20861,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 310, + "id": 266, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4156:3:0", + "referencedDeclaration": 1500, + "src": "3333:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 311, + "id": 267, "isConstant": false, "isLValue": false, "isPure": false, @@ -22136,7 +20880,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4156:9:0", + "src": "3333:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22154,18 +20898,18 @@ "typeString": "uint256" } ], - "id": 307, + "id": 263, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 230, - "src": "4136:7:0", + "referencedDeclaration": 186, + "src": "3313:7:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 312, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -22173,20 +20917,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4136:30:0", + "src": "3313:30:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 313, + "id": 269, "nodeType": "ExpressionStatement", - "src": "4136:30:0" + "src": "3313:30:0" } ] }, "documentation": null, - "id": 315, + "id": 271, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -22194,29 +20938,29 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 305, + "id": 261, "nodeType": "ParameterList", "parameters": [], - "src": "4108:2:0" + "src": "3285:2:0" }, "payable": true, "returnParameters": { - "id": 306, + "id": 262, "nodeType": "ParameterList", "parameters": [], - "src": "4126:0:0" + "src": "3303:0:0" }, - "scope": 1194, - "src": "4099:74:0", + "scope": 1146, + "src": "3276:74:0", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 333, + "id": 289, "nodeType": "Block", - "src": "4200:95:0", + "src": "3377:95:0", "statements": [ { "condition": { @@ -22225,7 +20969,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 327, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, @@ -22236,7 +20980,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 320, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -22245,18 +20989,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 317, + "id": 273, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4215:3:0", + "referencedDeclaration": 1500, + "src": "3392:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 318, + "id": 274, "isConstant": false, "isLValue": false, "isPure": false, @@ -22264,7 +21008,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4215:10:0", + "src": "3392:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22274,18 +21018,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 319, + "id": 275, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "4229:5:0", + "referencedDeclaration": 5, + "src": "3406:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4215:19:0", + "src": "3392:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22295,7 +21039,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 326, + "id": 282, "isConstant": false, "isLValue": false, "isPure": false, @@ -22303,41 +21047,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4238:26:0", + "src": "3415:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 321, + "id": 277, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4239:7:0", + "referencedDeclaration": 73, + "src": "3416:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 324, + "id": 280, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 322, + "id": 278, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4247:3:0", + "referencedDeclaration": 1500, + "src": "3424:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 323, + "id": 279, "isConstant": false, "isLValue": false, "isPure": false, @@ -22345,7 +21089,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4247:10:0", + "src": "3424:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22356,21 +21100,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4239:19:0", + "src": "3416:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 325, + "id": 281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "4239:25:0", + "referencedDeclaration": 80, + "src": "3416:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22381,37 +21125,37 @@ "typeString": "bool" } }, - "src": "4215:49:0", + "src": "3392:49:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 331, + "id": 287, "nodeType": "IfStatement", - "src": "4211:63:0", + "src": "3388:63:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 328, + "id": 284, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4266:6:0", + "referencedDeclaration": 1505, + "src": "3443:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 329, + "id": 285, "isConstant": false, "isLValue": false, "isPure": false, @@ -22419,47 +21163,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4266:8:0", + "src": "3443:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 330, + "id": 286, "nodeType": "ExpressionStatement", - "src": "4266:8:0" + "src": "3443:8:0" } }, { - "id": 332, + "id": 288, "nodeType": "PlaceholderStatement", - "src": "4287:1:0" + "src": "3464:1:0" } ] }, "documentation": null, - "id": 334, + "id": 290, "name": "onlyAdmin", "nodeType": "ModifierDefinition", "parameters": { - "id": 316, + "id": 272, "nodeType": "ParameterList", "parameters": [], - "src": "4197:2:0" + "src": "3374:2:0" }, - "src": "4179:116:0", + "src": "3356:116:0", "visibility": "internal" }, { "body": { - "id": 348, + "id": 304, "nodeType": "Block", - "src": "4336:64:0", + "src": "3513:64:0", "statements": [ { "condition": { "argumentTypes": null, - "id": 342, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -22467,33 +21211,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4351:20:0", + "src": "3528:20:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 338, + "id": 294, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4352:7:0", + "referencedDeclaration": 73, + "src": "3529:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 340, + "id": 296, "indexExpression": { "argumentTypes": null, - "id": 339, + "id": 295, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "4360:3:0", + "referencedDeclaration": 292, + "src": "3537:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22504,21 +21248,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4352:12:0", + "src": "3529:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 341, + "id": 297, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "4352:19:0", + "referencedDeclaration": 78, + "src": "3529:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22530,30 +21274,30 @@ } }, "falseBody": null, - "id": 346, + "id": 302, "nodeType": "IfStatement", - "src": "4347:34:0", + "src": "3524:34:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 343, + "id": 299, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4373:6:0", + "referencedDeclaration": 1505, + "src": "3550:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 344, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -22561,39 +21305,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4373:8:0", + "src": "3550:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 345, + "id": 301, "nodeType": "ExpressionStatement", - "src": "4373:8:0" + "src": "3550:8:0" } }, { - "id": 347, + "id": 303, "nodeType": "PlaceholderStatement", - "src": "4392:1:0" + "src": "3569:1:0" } ] }, "documentation": null, - "id": 349, + "id": 305, "name": "onlyExisting", "nodeType": "ModifierDefinition", "parameters": { - "id": 337, + "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 336, + "id": 292, "name": "who", "nodeType": "VariableDeclaration", - "scope": 349, - "src": "4323:11:0", + "scope": 305, + "src": "3500:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22601,10 +21345,10 @@ "typeString": "address" }, "typeName": { - "id": 335, + "id": 291, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4323:7:0", + "src": "3500:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22614,34 +21358,34 @@ "visibility": "internal" } ], - "src": "4322:13:0" + "src": "3499:13:0" }, - "src": "4301:99:0", + "src": "3478:99:0", "visibility": "internal" }, { "body": { - "id": 357, + "id": 313, "nodeType": "Block", - "src": "4514:41:0", + "src": "3691:41:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 354, + "id": 310, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4531:10:0", + "referencedDeclaration": 76, + "src": "3708:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 355, + "id": 311, "isConstant": false, "isLValue": true, "isPure": false, @@ -22649,21 +21393,21 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4531:17:0", + "src": "3708:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 353, - "id": 356, + "functionReturnParameters": 309, + "id": 312, "nodeType": "Return", - "src": "4524:24:0" + "src": "3701:24:0" } ] }, "documentation": null, - "id": 358, + "id": 314, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22671,23 +21415,23 @@ "name": "getMemberCount", "nodeType": "FunctionDefinition", "parameters": { - "id": 350, + "id": 306, "nodeType": "ParameterList", "parameters": [], - "src": "4481:2:0" + "src": "3658:2:0" }, "payable": false, "returnParameters": { - "id": 353, + "id": 309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 352, + "id": 308, "name": "", "nodeType": "VariableDeclaration", - "scope": 358, - "src": "4508:4:0", + "scope": 314, + "src": "3685:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22695,10 +21439,10 @@ "typeString": "uint256" }, "typeName": { - "id": 351, + "id": 307, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4508:4:0", + "src": "3685:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22708,45 +21452,45 @@ "visibility": "internal" } ], - "src": "4507:6:0" + "src": "3684:6:0" }, - "scope": 1194, - "src": "4458:97:0", + "scope": 1146, + "src": "3635:97:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 369, + "id": 325, "nodeType": "Block", - "src": "4632:39:0", + "src": "3809:39:0", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 321, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4649:10:0", + "referencedDeclaration": 76, + "src": "3826:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 367, + "id": 323, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 322, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "4660:3:0", + "referencedDeclaration": 316, + "src": "3837:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22757,21 +21501,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4649:15:0", + "src": "3826:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 364, - "id": 368, + "functionReturnParameters": 320, + "id": 324, "nodeType": "Return", - "src": "4642:22:0" + "src": "3819:22:0" } ] }, "documentation": null, - "id": 370, + "id": 326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22779,16 +21523,16 @@ "name": "getMemberAtKey", "nodeType": "FunctionDefinition", "parameters": { - "id": 361, + "id": 317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 360, + "id": 316, "name": "key", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4589:8:0", + "scope": 326, + "src": "3766:8:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22796,10 +21540,10 @@ "typeString": "uint256" }, "typeName": { - "id": 359, + "id": 315, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4589:4:0", + "src": "3766:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22809,20 +21553,20 @@ "visibility": "internal" } ], - "src": "4588:10:0" + "src": "3765:10:0" }, "payable": false, "returnParameters": { - "id": 364, + "id": 320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 363, + "id": 319, "name": "", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4623:7:0", + "scope": 326, + "src": "3800:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22830,10 +21574,10 @@ "typeString": "address" }, "typeName": { - "id": 362, + "id": 318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4623:7:0", + "src": "3800:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22843,37 +21587,37 @@ "visibility": "internal" } ], - "src": "4622:9:0" + "src": "3799:9:0" }, - "scope": 1194, - "src": "4565:106:0", + "scope": 1146, + "src": "3742:106:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 378, + "id": 334, "nodeType": "Block", - "src": "4744:36:0", + "src": "3921:36:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 375, + "id": 331, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "4761:4:0", + "referencedDeclaration": 1513, + "src": "3938:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 376, + "id": 332, "isConstant": false, "isLValue": false, "isPure": false, @@ -22881,21 +21625,21 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4761:12:0", + "src": "3938:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 374, - "id": 377, + "functionReturnParameters": 330, + "id": 333, "nodeType": "Return", - "src": "4754:19:0" + "src": "3931:19:0" } ] }, "documentation": null, - "id": 379, + "id": 335, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22903,23 +21647,23 @@ "name": "getBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 371, + "id": 327, "nodeType": "ParameterList", "parameters": [], - "src": "4700:2:0" + "src": "3877:2:0" }, "payable": false, "returnParameters": { - "id": 374, + "id": 330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 373, + "id": 329, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 379, - "src": "4727:15:0", + "scope": 335, + "src": "3904:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22927,10 +21671,10 @@ "typeString": "uint256" }, "typeName": { - "id": 372, + "id": 328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4727:7:0", + "src": "3904:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22940,19 +21684,19 @@ "visibility": "internal" } ], - "src": "4726:17:0" + "src": "3903:17:0" }, - "scope": 1194, - "src": "4681:99:0", + "scope": 1146, + "src": "3858:99:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 401, + "id": 357, "nodeType": "Block", - "src": "4945:94:0", + "src": "4122:94:0", "statements": [ { "expression": { @@ -22963,12 +21707,12 @@ "arguments": [ { "argumentTypes": null, - "id": 393, + "id": 349, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4970:4:0", + "referencedDeclaration": 338, + "src": "4147:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -22982,20 +21726,20 @@ "typeString": "string memory" } ], - "id": 392, + "id": 348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4963:6:0", + "src": "4140:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": "string" }, - "id": 394, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -23003,7 +21747,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4963:12:0", + "src": "4140:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -23011,12 +21755,12 @@ }, { "argumentTypes": null, - "id": 395, + "id": 351, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4977:5:0", + "referencedDeclaration": 340, + "src": "4154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23024,12 +21768,12 @@ }, { "argumentTypes": null, - "id": 396, + "id": 352, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "4984:18:0", + "referencedDeclaration": 342, + "src": "4161:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23037,12 +21781,12 @@ }, { "argumentTypes": null, - "id": 397, + "id": 353, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "5004:11:0", + "referencedDeclaration": 344, + "src": "4181:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23050,40 +21794,40 @@ }, { "argumentTypes": null, - "id": 398, + "id": 354, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "5017:14:0", + "referencedDeclaration": 346, + "src": "4194:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 399, + "id": 355, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4962:70:0", + "src": "4139:70:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_string_memory_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(string memory,address,uint256,uint256,uint256)" } }, - "functionReturnParameters": 391, - "id": 400, + "functionReturnParameters": 347, + "id": 356, "nodeType": "Return", - "src": "4955:77:0" + "src": "4132:77:0" } ] }, "documentation": null, - "id": 402, + "id": 358, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23091,23 +21835,23 @@ "name": "getContractInfo", "nodeType": "FunctionDefinition", "parameters": { - "id": 380, + "id": 336, "nodeType": "ParameterList", "parameters": [], - "src": "4814:2:0" + "src": "3991:2:0" }, "payable": false, "returnParameters": { - "id": 391, + "id": 347, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 382, + "id": 338, "name": "name", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4841:11:0", + "scope": 358, + "src": "4018:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23115,10 +21859,10 @@ "typeString": "string" }, "typeName": { - "id": 381, + "id": 337, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4841:6:0", + "src": "4018:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23129,11 +21873,11 @@ }, { "constant": false, - "id": 384, + "id": 340, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4854:13:0", + "scope": 358, + "src": "4031:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23141,10 +21885,10 @@ "typeString": "address" }, "typeName": { - "id": 383, + "id": 339, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4854:7:0", + "src": "4031:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23155,11 +21899,11 @@ }, { "constant": false, - "id": 386, + "id": 342, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4870:26:0", + "scope": 358, + "src": "4047:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23167,10 +21911,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 341, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4870:7:0", + "src": "4047:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23181,11 +21925,11 @@ }, { "constant": false, - "id": 388, + "id": 344, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4899:19:0", + "scope": 358, + "src": "4076:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23193,10 +21937,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 343, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4899:7:0", + "src": "4076:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23207,11 +21951,11 @@ }, { "constant": false, - "id": 390, + "id": 346, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4921:22:0", + "scope": 358, + "src": "4098:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23219,10 +21963,10 @@ "typeString": "uint256" }, "typeName": { - "id": 389, + "id": 345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4921:7:0", + "src": "4098:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23232,47 +21976,47 @@ "visibility": "internal" } ], - "src": "4840:104:0" + "src": "4017:104:0" }, - "scope": 1194, - "src": "4790:249:0", + "scope": 1146, + "src": "3967:249:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 434, + "id": 390, "nodeType": "Block", - "src": "5202:111:0", + "src": "4379:111:0", "statements": [ { "assignments": [ - 419 + 375 ], "declarations": [ { "constant": false, - "id": 419, + "id": 375, "name": "m", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5210:15:0", + "scope": 391, + "src": "4387:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 418, + "id": 374, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5210:6:0", + "referencedDeclaration": 91, + "src": "4387:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -23280,31 +22024,31 @@ "visibility": "internal" } ], - "id": 423, + "id": 379, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 420, + "id": 376, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5228:7:0", + "referencedDeclaration": 73, + "src": "4405:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 422, + "id": 378, "indexExpression": { "argumentTypes": null, - "id": 421, + "id": 377, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5236:8:0", + "referencedDeclaration": 360, + "src": "4413:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23315,14 +22059,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5228:17:0", + "src": "4405:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5210:35:0" + "src": "4387:35:0" }, { "expression": { @@ -23332,26 +22076,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 424, + "id": 380, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5261:1:0", + "referencedDeclaration": 375, + "src": "4438:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 425, + "id": 381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5261:7:0", + "referencedDeclaration": 80, + "src": "4438:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23361,26 +22105,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 426, + "id": 382, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5270:1:0", + "referencedDeclaration": 375, + "src": "4447:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 427, + "id": 383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5270:8:0", + "referencedDeclaration": 82, + "src": "4447:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23390,26 +22134,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 428, + "id": 384, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5280:1:0", + "referencedDeclaration": 375, + "src": "4457:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 429, + "id": 385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5280:11:0", + "referencedDeclaration": 84, + "src": "4457:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23419,54 +22163,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 430, + "id": 386, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5293:1:0", + "referencedDeclaration": 375, + "src": "4470:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 431, + "id": 387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "5293:12:0", + "referencedDeclaration": 86, + "src": "4470:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } } ], - "id": 432, + "id": 388, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5260:46:0", + "src": "4437:46:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$_t_uint256_$_t_string_memory_$", "typeString": "tuple(bool,uint256,uint256,string memory)" } }, - "functionReturnParameters": 417, - "id": 433, + "functionReturnParameters": 373, + "id": 389, "nodeType": "Return", - "src": "5253:53:0" + "src": "4430:53:0" } ] }, "documentation": null, - "id": 435, + "id": 391, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23475,49 +22219,49 @@ "arguments": [ { "argumentTypes": null, - "id": 407, + "id": 363, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5118:8:0", + "referencedDeclaration": 360, + "src": "4295:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 408, + "id": 364, "modifierName": { "argumentTypes": null, - "id": 406, + "id": 362, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5105:12:0", + "referencedDeclaration": 305, + "src": "4282:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "5105:22:0" + "src": "4282:22:0" } ], "name": "returnMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 405, + "id": 361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 404, + "id": 360, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5071:16:0", + "scope": 391, + "src": "4248:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23525,10 +22269,10 @@ "typeString": "address" }, "typeName": { - "id": 403, + "id": 359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5071:7:0", + "src": "4248:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23538,20 +22282,20 @@ "visibility": "internal" } ], - "src": "5070:18:0" + "src": "4247:18:0" }, "payable": false, "returnParameters": { - "id": 417, + "id": 373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 410, + "id": 366, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5136:10:0", + "scope": 391, + "src": "4313:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23559,10 +22303,10 @@ "typeString": "bool" }, "typeName": { - "id": 409, + "id": 365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5136:4:0", + "src": "4313:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23573,11 +22317,11 @@ }, { "constant": false, - "id": 412, + "id": 368, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5148:14:0", + "scope": 391, + "src": "4325:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23585,10 +22329,10 @@ "typeString": "uint256" }, "typeName": { - "id": 411, + "id": 367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5148:7:0", + "src": "4325:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23599,11 +22343,11 @@ }, { "constant": false, - "id": 414, + "id": 370, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5164:17:0", + "scope": 391, + "src": "4341:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23611,10 +22355,10 @@ "typeString": "uint256" }, "typeName": { - "id": 413, + "id": 369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5164:7:0", + "src": "4341:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23625,11 +22369,11 @@ }, { "constant": false, - "id": 416, + "id": 372, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5183:17:0", + "scope": 391, + "src": "4360:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23637,10 +22381,10 @@ "typeString": "string" }, "typeName": { - "id": 415, + "id": 371, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5183:6:0", + "src": "4360:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23650,19 +22394,19 @@ "visibility": "internal" } ], - "src": "5135:66:0" + "src": "4312:66:0" }, - "scope": 1194, - "src": "5049:264:0", + "scope": 1146, + "src": "4226:264:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 451, + "id": 407, "nodeType": "Block", - "src": "5394:200:0", + "src": "4571:61:0", "statements": [ { "expression": { @@ -23673,14 +22417,14 @@ "arguments": [ { "argumentTypes": null, - "id": 447, + "id": 403, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "5442:4:0", + "referencedDeclaration": 1513, + "src": "4619:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } } @@ -23688,24 +22432,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } ], - "id": 446, + "id": 402, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5434:7:0", + "src": "4611:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 448, + "id": 404, "isConstant": false, "isLValue": false, "isPure": false, @@ -23713,7 +22457,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5434:13:0", + "src": "4611:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23732,12 +22476,12 @@ "arguments": [ { "argumentTypes": null, - "id": 443, + "id": 399, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "5417:5:0", + "referencedDeclaration": 393, + "src": "4594:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23751,18 +22495,18 @@ "typeString": "address" } ], - "id": 442, + "id": 398, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "5411:5:0", + "referencedDeclaration": 1213, + "src": "4588:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 444, + "id": 400, "isConstant": false, "isLValue": false, "isPure": false, @@ -23770,27 +22514,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:12:0", + "src": "4588:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 445, + "id": 401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1203, - "src": "5411:22:0", + "referencedDeclaration": 1155, + "src": "4588:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 449, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -23798,21 +22542,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:37:0", + "src": "4588:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 441, - "id": 450, + "functionReturnParameters": 397, + "id": 406, "nodeType": "Return", - "src": "5404:44:0" + "src": "4581:44:0" } ] }, "documentation": null, - "id": 452, + "id": 408, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23820,16 +22564,16 @@ "name": "checkERC20Balance", "nodeType": "FunctionDefinition", "parameters": { - "id": 438, + "id": 394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 437, + "id": 393, "name": "token", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5346:13:0", + "scope": 408, + "src": "4523:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23837,10 +22581,10 @@ "typeString": "address" }, "typeName": { - "id": 436, + "id": 392, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5346:7:0", + "src": "4523:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23850,20 +22594,20 @@ "visibility": "internal" } ], - "src": "5345:15:0" + "src": "4522:15:0" }, "payable": false, "returnParameters": { - "id": 441, + "id": 397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 440, + "id": 396, "name": "", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5385:7:0", + "scope": 408, + "src": "4562:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23871,10 +22615,10 @@ "typeString": "uint256" }, "typeName": { - "id": 439, + "id": 395, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5385:7:0", + "src": "4562:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23884,19 +22628,19 @@ "visibility": "internal" } ], - "src": "5384:9:0" + "src": "4561:9:0" }, - "scope": 1194, - "src": "5319:275:0", + "scope": 1146, + "src": "4496:136:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 521, + "id": 477, "nodeType": "Block", - "src": "5746:399:0", + "src": "4784:399:0", "statements": [ { "condition": { @@ -23905,26 +22649,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 465, + "id": 421, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5817:7:0", + "referencedDeclaration": 73, + "src": "4855:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 467, + "id": 423, "indexExpression": { "argumentTypes": null, - "id": 466, + "id": 422, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "5825:3:0", + "referencedDeclaration": 410, + "src": "4863:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23935,51 +22679,51 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5817:12:0", + "src": "4855:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 468, + "id": 424, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5817:19:0", + "referencedDeclaration": 78, + "src": "4855:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 472, + "id": 428, "nodeType": "IfStatement", - "src": "5813:33:0", + "src": "4851:33:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 469, + "id": 425, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5838:6:0", + "referencedDeclaration": 1505, + "src": "4876:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 470, + "id": 426, "isConstant": false, "isLValue": false, "isPure": false, @@ -23987,15 +22731,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5838:8:0", + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 427, "nodeType": "ExpressionStatement", - "src": "5838:8:0" + "src": "4876:8:0" } }, { @@ -24005,7 +22749,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 478, + "id": 434, "isConstant": false, "isLValue": false, "isPure": false, @@ -24017,12 +22761,12 @@ "arguments": [ { "argumentTypes": null, - "id": 474, + "id": 430, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "5866:10:0", + "referencedDeclaration": 416, + "src": "4904:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -24036,20 +22780,20 @@ "typeString": "string memory" } ], - "id": 473, + "id": 429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5860:5:0", + "src": "4898:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 475, + "id": 431, "isConstant": false, "isLValue": false, "isPure": false, @@ -24057,13 +22801,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5860:17:0", + "src": "4898:17:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 476, + "id": 432, "isConstant": false, "isLValue": false, "isPure": false, @@ -24071,7 +22815,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5860:24:0", + "src": "4898:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24082,14 +22826,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 477, + "id": 433, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5887:2:0", + "src": "4925:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -24097,37 +22841,37 @@ }, "value": "21" }, - "src": "5860:29:0", + "src": "4898:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 482, + "id": 438, "nodeType": "IfStatement", - "src": "5856:43:0", + "src": "4894:43:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 479, + "id": 435, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5891:6:0", + "referencedDeclaration": 1505, + "src": "4929:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 480, + "id": 436, "isConstant": false, "isLValue": false, "isPure": false, @@ -24135,15 +22879,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5891:8:0", + "src": "4929:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 481, + "id": 437, "nodeType": "ExpressionStatement", - "src": "5891:8:0" + "src": "4929:8:0" } }, { @@ -24151,26 +22895,26 @@ "declarations": [ { "constant": false, - "id": 484, + "id": 440, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5910:23:0", + "scope": 478, + "src": "4948:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 483, + "id": 439, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5910:6:0", + "referencedDeclaration": 91, + "src": "4948:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -24178,15 +22922,15 @@ "visibility": "internal" } ], - "id": 485, + "id": 441, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "5910:23:0" + "src": "4948:23:0" }, { "expression": { "argumentTypes": null, - "id": 490, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -24195,26 +22939,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 486, + "id": 442, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5943:9:0", + "referencedDeclaration": 440, + "src": "4981:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 488, + "id": 444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5943:16:0", + "referencedDeclaration": 78, + "src": "4981:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24225,14 +22969,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 489, + "id": 445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5962:4:0", + "src": "5000:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24240,20 +22984,20 @@ }, "value": "true" }, - "src": "5943:23:0", + "src": "4981:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 491, + "id": 447, "nodeType": "ExpressionStatement", - "src": "5943:23:0" + "src": "4981:23:0" }, { "expression": { "argumentTypes": null, - "id": 496, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -24262,26 +23006,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 492, + "id": 448, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5976:9:0", + "referencedDeclaration": 440, + "src": "5014:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 494, + "id": 450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5976:15:0", + "referencedDeclaration": 80, + "src": "5014:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24291,31 +23035,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 495, + "id": 451, "name": "admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "5994:5:0", + "referencedDeclaration": 414, + "src": "5032:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5976:23:0", + "src": "5014:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 497, + "id": 453, "nodeType": "ExpressionStatement", - "src": "5976:23:0" + "src": "5014:23:0" }, { "expression": { "argumentTypes": null, - "id": 502, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, @@ -24324,26 +23068,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 498, + "id": 454, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6009:9:0", + "referencedDeclaration": 440, + "src": "5047:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 500, + "id": 456, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6009:20:0", + "referencedDeclaration": 86, + "src": "5047:20:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -24353,31 +23097,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 501, + "id": 457, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6032:10:0", + "referencedDeclaration": 416, + "src": "5070:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6009:33:0", + "src": "5047:33:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, - "id": 503, + "id": 459, "nodeType": "ExpressionStatement", - "src": "6009:33:0" + "src": "5047:33:0" }, { "expression": { "argumentTypes": null, - "id": 508, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -24386,26 +23130,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 504, + "id": 460, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6053:7:0", + "referencedDeclaration": 73, + "src": "5091:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 506, + "id": 462, "indexExpression": { "argumentTypes": null, - "id": 505, + "id": 461, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6061:3:0", + "referencedDeclaration": 410, + "src": "5099:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24416,9 +23160,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6053:12:0", + "src": "5091:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -24426,26 +23170,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 507, + "id": 463, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6068:9:0", + "referencedDeclaration": 440, + "src": "5106:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "6053:24:0", + "src": "5091:24:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 509, + "id": 465, "nodeType": "ExpressionStatement", - "src": "6053:24:0" + "src": "5091:24:0" }, { "expression": { @@ -24453,12 +23197,12 @@ "arguments": [ { "argumentTypes": null, - "id": 513, + "id": 469, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6103:3:0", + "referencedDeclaration": 410, + "src": "5141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24474,18 +23218,18 @@ ], "expression": { "argumentTypes": null, - "id": 510, + "id": 466, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "6087:10:0", + "referencedDeclaration": 76, + "src": "5125:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 512, + "id": 468, "isConstant": false, "isLValue": false, "isPure": false, @@ -24493,13 +23237,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6087:15:0", + "src": "5125:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 514, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, @@ -24507,15 +23251,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:20:0", + "src": "5125:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 515, + "id": 471, "nodeType": "ExpressionStatement", - "src": "6087:20:0" + "src": "5125:20:0" }, { "expression": { @@ -24523,12 +23267,12 @@ "arguments": [ { "argumentTypes": null, - "id": 517, + "id": 473, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6126:3:0", + "referencedDeclaration": 410, + "src": "5164:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24536,12 +23280,12 @@ }, { "argumentTypes": null, - "id": 518, + "id": 474, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "6131:6:0", + "referencedDeclaration": 412, + "src": "5169:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24559,18 +23303,18 @@ "typeString": "uint256" } ], - "id": 516, + "id": 472, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "6117:8:0", + "referencedDeclaration": 770, + "src": "5155:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 519, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -24578,57 +23322,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:21:0", + "src": "5155:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6117:21:0" + "src": "5155:21:0" } ] }, "documentation": null, - "id": 522, + "id": 478, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 463, + "id": 419, "modifierName": { "argumentTypes": null, - "id": 462, + "id": 418, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "5734:9:0", + "referencedDeclaration": 290, + "src": "4772:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "5734:11:0" + "src": "4772:11:0" } ], "name": "addMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 454, + "id": 410, "name": "who", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5667:11:0", + "scope": 478, + "src": "4705:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24636,10 +23380,10 @@ "typeString": "address" }, "typeName": { - "id": 453, + "id": 409, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5667:7:0", + "src": "4705:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24650,11 +23394,11 @@ }, { "constant": false, - "id": 456, + "id": 412, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5680:14:0", + "scope": 478, + "src": "4718:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24662,10 +23406,10 @@ "typeString": "uint256" }, "typeName": { - "id": 455, + "id": 411, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5680:7:0", + "src": "4718:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24676,11 +23420,11 @@ }, { "constant": false, - "id": 458, + "id": 414, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5696:10:0", + "scope": 478, + "src": "4734:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24688,10 +23432,10 @@ "typeString": "bool" }, "typeName": { - "id": 457, + "id": 413, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5696:4:0", + "src": "4734:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24702,11 +23446,11 @@ }, { "constant": false, - "id": 460, + "id": 416, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5708:17:0", + "scope": 478, + "src": "4746:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24714,10 +23458,10 @@ "typeString": "string" }, "typeName": { - "id": 459, + "id": 415, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5708:6:0", + "src": "4746:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -24727,26 +23471,26 @@ "visibility": "internal" } ], - "src": "5666:60:0" + "src": "4704:60:0" }, "payable": false, "returnParameters": { - "id": 464, + "id": 420, "nodeType": "ParameterList", "parameters": [], - "src": "5746:0:0" + "src": "4784:0:0" }, - "scope": 1194, - "src": "5648:497:0", + "scope": 1146, + "src": "4686:497:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 575, + "id": 531, "nodeType": "Block", - "src": "6248:244:0", + "src": "5286:244:0", "statements": [ { "condition": { @@ -24755,7 +23499,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 544, + "id": 500, "isConstant": false, "isLValue": false, "isPure": false, @@ -24769,26 +23513,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 536, + "id": 492, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6267:7:0", + "referencedDeclaration": 73, + "src": "5305:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 538, + "id": 494, "indexExpression": { "argumentTypes": null, - "id": 537, + "id": 493, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6275:3:0", + "referencedDeclaration": 480, + "src": "5313:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24799,21 +23543,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6267:12:0", + "src": "5305:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 539, + "id": 495, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6267:23:0", + "referencedDeclaration": 86, + "src": "5305:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -24827,18 +23571,18 @@ "typeString": "string storage ref" } ], - "id": 535, + "id": 491, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6262:4:0", + "referencedDeclaration": 1510, + "src": "5300:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 540, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -24846,7 +23590,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6262:29:0", + "src": "5300:29:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24859,12 +23603,12 @@ "arguments": [ { "argumentTypes": null, - "id": 542, + "id": 498, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6300:4:0", + "referencedDeclaration": 486, + "src": "5338:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -24878,18 +23622,18 @@ "typeString": "string memory" } ], - "id": 541, + "id": 497, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6295:4:0", + "referencedDeclaration": 1510, + "src": "5333:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 543, + "id": 499, "isConstant": false, "isLValue": false, "isPure": false, @@ -24897,34 +23641,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6295:10:0", + "src": "5333:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6262:43:0", + "src": "5300:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 550, + "id": 506, "nodeType": "IfStatement", - "src": "6258:76:0", + "src": "5296:76:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 502, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6324:3:0", + "referencedDeclaration": 480, + "src": "5362:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24932,12 +23676,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 503, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6329:4:0", + "referencedDeclaration": 486, + "src": "5367:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -24955,18 +23699,18 @@ "typeString": "string memory" } ], - "id": 545, + "id": 501, "name": "changeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6307:16:0", + "referencedDeclaration": 589, + "src": "5345:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory)" } }, - "id": 548, + "id": 504, "isConstant": false, "isLValue": false, "isPure": false, @@ -24974,15 +23718,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6307:27:0", + "src": "5345:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 549, + "id": 505, "nodeType": "ExpressionStatement", - "src": "6307:27:0" + "src": "5345:27:0" } }, { @@ -24992,7 +23736,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 556, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, @@ -25003,26 +23747,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 551, + "id": 507, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6348:7:0", + "referencedDeclaration": 73, + "src": "5386:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 553, + "id": 509, "indexExpression": { "argumentTypes": null, - "id": 552, + "id": 508, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6356:3:0", + "referencedDeclaration": 480, + "src": "5394:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25033,21 +23777,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6348:12:0", + "src": "5386:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 554, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6348:18:0", + "referencedDeclaration": 80, + "src": "5386:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25057,39 +23801,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 555, + "id": 511, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6370:7:0", + "referencedDeclaration": 484, + "src": "5408:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6348:29:0", + "src": "5386:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 562, + "id": 518, "nodeType": "IfStatement", - "src": "6344:69:0", + "src": "5382:69:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 558, + "id": 514, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6400:3:0", + "referencedDeclaration": 480, + "src": "5438:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25097,12 +23841,12 @@ }, { "argumentTypes": null, - "id": 559, + "id": 515, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6405:7:0", + "referencedDeclaration": 484, + "src": "5443:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25120,18 +23864,18 @@ "typeString": "bool" } ], - "id": 557, + "id": 513, "name": "changeAdminPrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "6379:20:0", + "referencedDeclaration": 615, + "src": "5417:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,bool)" } }, - "id": 560, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, @@ -25139,15 +23883,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6379:34:0", + "src": "5417:34:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 561, + "id": 517, "nodeType": "ExpressionStatement", - "src": "6379:34:0" + "src": "5417:34:0" } }, { @@ -25157,7 +23901,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 568, + "id": 524, "isConstant": false, "isLValue": false, "isPure": false, @@ -25168,26 +23912,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 563, + "id": 519, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6427:7:0", + "referencedDeclaration": 73, + "src": "5465:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 565, + "id": 521, "indexExpression": { "argumentTypes": null, - "id": 564, + "id": 520, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6435:3:0", + "referencedDeclaration": 480, + "src": "5473:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25198,21 +23942,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6427:12:0", + "src": "5465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 566, + "id": 522, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6427:19:0", + "referencedDeclaration": 82, + "src": "5465:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25222,39 +23966,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 567, + "id": 523, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6450:6:0", + "referencedDeclaration": 482, + "src": "5488:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6427:29:0", + "src": "5465:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 574, + "id": 530, "nodeType": "IfStatement", - "src": "6423:62:0", + "src": "5461:62:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 570, + "id": 526, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6473:3:0", + "referencedDeclaration": 480, + "src": "5511:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25262,12 +24006,12 @@ }, { "argumentTypes": null, - "id": 571, + "id": 527, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6478:6:0", + "referencedDeclaration": 482, + "src": "5516:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25285,18 +24029,18 @@ "typeString": "uint256" } ], - "id": 569, + "id": 525, "name": "allocateShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 772, - "src": "6458:14:0", + "referencedDeclaration": 728, + "src": "5496:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 572, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -25304,58 +24048,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6458:27:0", + "src": "5496:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 573, + "id": 529, "nodeType": "ExpressionStatement", - "src": "6458:27:0" + "src": "5496:27:0" } } ] }, "documentation": null, - "id": 576, + "id": 532, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 533, + "id": 489, "modifierName": { "argumentTypes": null, - "id": 532, + "id": 488, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6236:9:0", + "referencedDeclaration": 290, + "src": "5274:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6236:11:0" + "src": "5274:11:0" } ], "name": "updateMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 524, + "id": 480, "name": "who", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6173:11:0", + "scope": 532, + "src": "5211:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25363,10 +24107,10 @@ "typeString": "address" }, "typeName": { - "id": 523, + "id": 479, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6173:7:0", + "src": "5211:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25377,11 +24121,11 @@ }, { "constant": false, - "id": 526, + "id": 482, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6186:14:0", + "scope": 532, + "src": "5224:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25389,10 +24133,10 @@ "typeString": "uint256" }, "typeName": { - "id": 525, + "id": 481, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6186:7:0", + "src": "5224:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25403,11 +24147,11 @@ }, { "constant": false, - "id": 528, + "id": 484, "name": "isAdmin", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6202:12:0", + "scope": 532, + "src": "5240:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25415,10 +24159,10 @@ "typeString": "bool" }, "typeName": { - "id": 527, + "id": 483, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6202:4:0", + "src": "5240:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25429,11 +24173,11 @@ }, { "constant": false, - "id": 530, + "id": 486, "name": "name", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6216:11:0", + "scope": 532, + "src": "5254:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25441,10 +24185,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 485, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6216:6:0", + "src": "5254:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -25454,26 +24198,26 @@ "visibility": "internal" } ], - "src": "6172:56:0" + "src": "5210:56:0" }, "payable": false, "returnParameters": { - "id": 534, + "id": 490, "nodeType": "ParameterList", "parameters": [], - "src": "6248:0:0" + "src": "5286:0:0" }, - "scope": 1194, - "src": "6151:341:0", + "scope": 1146, + "src": "5189:341:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 632, + "id": 588, "nodeType": "Block", - "src": "6638:259:0", + "src": "5676:259:0", "statements": [ { "condition": { @@ -25482,7 +24226,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 601, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, @@ -25493,7 +24237,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 594, + "id": 550, "isConstant": false, "isLValue": false, "isPure": false, @@ -25504,7 +24248,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 589, + "id": 545, "isConstant": false, "isLValue": false, "isPure": false, @@ -25513,18 +24257,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 586, + "id": 542, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6652:3:0", + "referencedDeclaration": 1500, + "src": "5690:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 587, + "id": 543, "isConstant": false, "isLValue": false, "isPure": false, @@ -25532,7 +24276,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6652:10:0", + "src": "5690:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25542,18 +24286,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 588, + "id": 544, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6666:3:0", + "referencedDeclaration": 534, + "src": "5704:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6652:17:0", + "src": "5690:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25567,7 +24311,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 593, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -25576,18 +24320,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 590, + "id": 546, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6673:3:0", + "referencedDeclaration": 1500, + "src": "5711:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 591, + "id": 547, "isConstant": false, "isLValue": false, "isPure": false, @@ -25595,7 +24339,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6673:10:0", + "src": "5711:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25605,24 +24349,24 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 592, + "id": 548, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "6687:5:0", + "referencedDeclaration": 5, + "src": "5725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6673:19:0", + "src": "5711:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6652:40:0", + "src": "5690:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25632,7 +24376,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 600, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, @@ -25640,41 +24384,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6696:26:0", + "src": "5734:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 595, + "id": 551, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6697:7:0", + "referencedDeclaration": 73, + "src": "5735:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 598, + "id": 554, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 596, + "id": 552, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6705:3:0", + "referencedDeclaration": 1500, + "src": "5743:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 597, + "id": 553, "isConstant": false, "isLValue": false, "isPure": false, @@ -25682,7 +24426,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6705:10:0", + "src": "5743:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25693,21 +24437,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6697:19:0", + "src": "5735:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 599, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6697:25:0", + "referencedDeclaration": 80, + "src": "5735:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25718,37 +24462,37 @@ "typeString": "bool" } }, - "src": "6652:70:0", + "src": "5690:70:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 605, + "id": 561, "nodeType": "IfStatement", - "src": "6648:84:0", + "src": "5686:84:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 602, + "id": 558, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6724:6:0", + "referencedDeclaration": 1505, + "src": "5762:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 603, + "id": 559, "isConstant": false, "isLValue": false, "isPure": false, @@ -25756,15 +24500,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6724:8:0", + "src": "5762:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 604, + "id": 560, "nodeType": "ExpressionStatement", - "src": "6724:8:0" + "src": "5762:8:0" } }, { @@ -25774,7 +24518,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 611, + "id": 567, "isConstant": false, "isLValue": false, "isPure": false, @@ -25786,12 +24530,12 @@ "arguments": [ { "argumentTypes": null, - "id": 607, + "id": 563, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6752:7:0", + "referencedDeclaration": 536, + "src": "5790:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -25805,20 +24549,20 @@ "typeString": "string memory" } ], - "id": 606, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6746:5:0", + "src": "5784:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 608, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, @@ -25826,13 +24570,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6746:14:0", + "src": "5784:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 609, + "id": 565, "isConstant": false, "isLValue": false, "isPure": false, @@ -25840,7 +24584,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6746:21:0", + "src": "5784:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25851,14 +24595,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 610, + "id": 566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6770:2:0", + "src": "5808:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -25866,37 +24610,37 @@ }, "value": "21" }, - "src": "6746:26:0", + "src": "5784:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 615, + "id": 571, "nodeType": "IfStatement", - "src": "6742:40:0", + "src": "5780:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 612, + "id": 568, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6774:6:0", + "referencedDeclaration": 1505, + "src": "5812:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 613, + "id": 569, "isConstant": false, "isLValue": false, "isPure": false, @@ -25904,15 +24648,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6774:8:0", + "src": "5812:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 614, + "id": 570, "nodeType": "ExpressionStatement", - "src": "6774:8:0" + "src": "5812:8:0" } }, { @@ -25921,12 +24665,12 @@ "arguments": [ { "argumentTypes": null, - "id": 617, + "id": 573, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6809:3:0", + "referencedDeclaration": 534, + "src": "5847:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25938,26 +24682,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 618, + "id": 574, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6814:7:0", + "referencedDeclaration": 73, + "src": "5852:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 620, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 619, + "id": 575, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6822:3:0", + "referencedDeclaration": 534, + "src": "5860:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25968,21 +24712,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6814:12:0", + "src": "5852:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 621, + "id": 577, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6814:23:0", + "referencedDeclaration": 86, + "src": "5852:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -25990,12 +24734,12 @@ }, { "argumentTypes": null, - "id": 622, + "id": 578, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6839:7:0", + "referencedDeclaration": 536, + "src": "5877:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26017,18 +24761,18 @@ "typeString": "string memory" } ], - "id": 616, + "id": 572, "name": "ChangeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "6792:16:0", + "referencedDeclaration": 242, + "src": "5830:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 623, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, @@ -26036,20 +24780,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6792:55:0", + "src": "5830:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 624, + "id": 580, "nodeType": "ExpressionStatement", - "src": "6792:55:0" + "src": "5830:55:0" }, { "expression": { "argumentTypes": null, - "id": 630, + "id": 586, "isConstant": false, "isLValue": false, "isPure": false, @@ -26060,26 +24804,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 625, + "id": 581, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6857:7:0", + "referencedDeclaration": 73, + "src": "5895:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 627, + "id": 583, "indexExpression": { "argumentTypes": null, - "id": 626, + "id": 582, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6865:3:0", + "referencedDeclaration": 534, + "src": "5903:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26090,21 +24834,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6857:12:0", + "src": "5895:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 628, + "id": 584, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6857:23:0", + "referencedDeclaration": 86, + "src": "5895:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26114,31 +24858,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 629, + "id": 585, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6883:7:0", + "referencedDeclaration": 536, + "src": "5921:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6857:33:0", + "src": "5895:33:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 631, + "id": 587, "nodeType": "ExpressionStatement", - "src": "6857:33:0" + "src": "5895:33:0" } ] }, "documentation": null, - "id": 633, + "id": 589, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -26147,49 +24891,49 @@ "arguments": [ { "argumentTypes": null, - "id": 583, + "id": 539, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6633:3:0", + "referencedDeclaration": 534, + "src": "5671:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 584, + "id": 540, "modifierName": { "argumentTypes": null, - "id": 582, + "id": 538, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "6620:12:0", + "referencedDeclaration": 305, + "src": "5658:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6620:17:0" + "src": "5658:17:0" } ], "name": "changeMemberName", "nodeType": "FunctionDefinition", "parameters": { - "id": 581, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 578, + "id": 534, "name": "who", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6584:11:0", + "scope": 589, + "src": "5622:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26197,10 +24941,10 @@ "typeString": "address" }, "typeName": { - "id": 577, + "id": 533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6584:7:0", + "src": "5622:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26211,11 +24955,11 @@ }, { "constant": false, - "id": 580, + "id": 536, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6597:14:0", + "scope": 589, + "src": "5635:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26223,10 +24967,10 @@ "typeString": "string" }, "typeName": { - "id": 579, + "id": 535, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6597:6:0", + "src": "5635:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -26236,26 +24980,26 @@ "visibility": "internal" } ], - "src": "6583:29:0" + "src": "5621:29:0" }, "payable": false, "returnParameters": { - "id": 585, + "id": 541, "nodeType": "ParameterList", "parameters": [], - "src": "6638:0:0" + "src": "5676:0:0" }, - "scope": 1194, - "src": "6558:339:0", + "scope": 1146, + "src": "5596:339:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 658, + "id": 614, "nodeType": "Block", - "src": "6980:107:0", + "src": "6018:107:0", "statements": [ { "expression": { @@ -26263,12 +25007,12 @@ "arguments": [ { "argumentTypes": null, - "id": 643, + "id": 599, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7006:3:0", + "referencedDeclaration": 591, + "src": "6044:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26280,26 +25024,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 644, + "id": 600, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7011:7:0", + "referencedDeclaration": 73, + "src": "6049:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 646, + "id": 602, "indexExpression": { "argumentTypes": null, - "id": 645, + "id": 601, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7019:3:0", + "referencedDeclaration": 591, + "src": "6057:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26310,21 +25054,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7011:12:0", + "src": "6049:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 647, + "id": 603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7011:18:0", + "referencedDeclaration": 80, + "src": "6049:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26332,12 +25076,12 @@ }, { "argumentTypes": null, - "id": 648, + "id": 604, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7031:8:0", + "referencedDeclaration": 593, + "src": "6069:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26359,18 +25103,18 @@ "typeString": "bool" } ], - "id": 642, + "id": 598, "name": "ChangePrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 272, - "src": "6990:15:0", + "referencedDeclaration": 228, + "src": "6028:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,bool,bool)" } }, - "id": 649, + "id": 605, "isConstant": false, "isLValue": false, "isPure": false, @@ -26378,20 +25122,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6990:50:0", + "src": "6028:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 650, + "id": 606, "nodeType": "ExpressionStatement", - "src": "6990:50:0" + "src": "6028:50:0" }, { "expression": { "argumentTypes": null, - "id": 656, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, @@ -26402,26 +25146,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 651, + "id": 607, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7050:7:0", + "referencedDeclaration": 73, + "src": "6088:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 653, + "id": 609, "indexExpression": { "argumentTypes": null, - "id": 652, + "id": 608, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7058:3:0", + "referencedDeclaration": 591, + "src": "6096:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26432,21 +25176,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7050:12:0", + "src": "6088:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 654, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7050:18:0", + "referencedDeclaration": 80, + "src": "6088:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26456,68 +25200,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 655, + "id": 611, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7071:8:0", + "referencedDeclaration": 593, + "src": "6109:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7050:29:0", + "src": "6088:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 657, + "id": 613, "nodeType": "ExpressionStatement", - "src": "7050:29:0" + "src": "6088:29:0" } ] }, "documentation": null, - "id": 659, + "id": 615, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 640, + "id": 596, "modifierName": { "argumentTypes": null, - "id": 639, + "id": 595, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6968:9:0", + "referencedDeclaration": 290, + "src": "6006:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6968:11:0" + "src": "6006:11:0" } ], "name": "changeAdminPrivilege", "nodeType": "FunctionDefinition", "parameters": { - "id": 638, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 635, + "id": 591, "name": "who", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6933:11:0", + "scope": 615, + "src": "5971:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26525,10 +25269,10 @@ "typeString": "address" }, "typeName": { - "id": 634, + "id": 590, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6933:7:0", + "src": "5971:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26539,11 +25283,11 @@ }, { "constant": false, - "id": 637, + "id": 593, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6946:13:0", + "scope": 615, + "src": "5984:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26551,10 +25295,10 @@ "typeString": "bool" }, "typeName": { - "id": 636, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6946:4:0", + "src": "5984:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26564,26 +25308,26 @@ "visibility": "internal" } ], - "src": "6932:28:0" + "src": "5970:28:0" }, "payable": false, "returnParameters": { - "id": 641, + "id": 597, "nodeType": "ParameterList", "parameters": [], - "src": "6980:0:0" + "src": "6018:0:0" }, - "scope": 1194, - "src": "6903:184:0", + "scope": 1146, + "src": "5941:184:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 685, + "id": 641, "nodeType": "Block", - "src": "7215:124:0", + "src": "6253:124:0", "statements": [ { "condition": { @@ -26592,7 +25336,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 671, + "id": 627, "isConstant": false, "isLValue": false, "isPure": false, @@ -26604,12 +25348,12 @@ "arguments": [ { "argumentTypes": null, - "id": 667, + "id": 623, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7235:7:0", + "referencedDeclaration": 617, + "src": "6273:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26623,20 +25367,20 @@ "typeString": "string memory" } ], - "id": 666, + "id": 622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7229:5:0", + "src": "6267:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 668, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -26644,13 +25388,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7229:14:0", + "src": "6267:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 669, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -26658,7 +25402,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7229:21:0", + "src": "6267:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26669,14 +25413,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 670, + "id": 626, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7253:2:0", + "src": "6291:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -26684,37 +25428,37 @@ }, "value": "21" }, - "src": "7229:26:0", + "src": "6267:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 675, + "id": 631, "nodeType": "IfStatement", - "src": "7225:40:0", + "src": "6263:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 672, + "id": 628, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7257:6:0", + "referencedDeclaration": 1505, + "src": "6295:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 673, + "id": 629, "isConstant": false, "isLValue": false, "isPure": false, @@ -26722,15 +25466,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7257:8:0", + "src": "6295:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 674, + "id": 630, "nodeType": "ExpressionStatement", - "src": "7257:8:0" + "src": "6295:8:0" } }, { @@ -26739,12 +25483,12 @@ "arguments": [ { "argumentTypes": null, - "id": 677, + "id": 633, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7294:4:0", + "referencedDeclaration": 56, + "src": "6332:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26752,12 +25496,12 @@ }, { "argumentTypes": null, - "id": 678, + "id": 634, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7300:7:0", + "referencedDeclaration": 617, + "src": "6338:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26775,18 +25519,18 @@ "typeString": "string memory" } ], - "id": 676, + "id": 632, "name": "ChangeContractName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 278, - "src": "7275:18:0", + "referencedDeclaration": 234, + "src": "6313:18:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, - "id": 679, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, @@ -26794,32 +25538,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7275:33:0", + "src": "6313:33:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 680, + "id": 636, "nodeType": "ExpressionStatement", - "src": "7275:33:0" + "src": "6313:33:0" }, { "expression": { "argumentTypes": null, - "id": 683, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 681, + "id": 637, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7318:4:0", + "referencedDeclaration": 56, + "src": "6356:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26829,68 +25573,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 682, + "id": 638, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7325:7:0", + "referencedDeclaration": 617, + "src": "6363:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "7318:14:0", + "src": "6356:14:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 684, + "id": 640, "nodeType": "ExpressionStatement", - "src": "7318:14:0" + "src": "6356:14:0" } ] }, "documentation": null, - "id": 686, + "id": 642, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 664, + "id": 620, "modifierName": { "argumentTypes": null, - "id": 663, + "id": 619, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "7203:9:0", + "referencedDeclaration": 290, + "src": "6241:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7203:11:0" + "src": "6241:11:0" } ], "name": "changeContractName", "nodeType": "FunctionDefinition", "parameters": { - "id": 662, + "id": 618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 661, + "id": 617, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 686, - "src": "7180:14:0", + "scope": 642, + "src": "6218:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26898,10 +25642,10 @@ "typeString": "string" }, "typeName": { - "id": 660, + "id": 616, "name": "string", "nodeType": "ElementaryTypeName", - "src": "7180:6:0", + "src": "6218:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -26911,26 +25655,26 @@ "visibility": "internal" } ], - "src": "7179:16:0" + "src": "6217:16:0" }, "payable": false, "returnParameters": { - "id": 665, + "id": 621, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:0" + "src": "6253:0:0" }, - "scope": 1194, - "src": "7152:187:0", + "scope": 1146, + "src": "6190:187:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 722, + "id": 678, "nodeType": "Block", - "src": "7653:262:0", + "src": "6691:262:0", "statements": [ { "condition": { @@ -26939,19 +25683,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 695, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 693, + "id": 649, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7667:13:0", + "referencedDeclaration": 644, + "src": "6705:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26961,48 +25705,48 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 694, + "id": 650, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7683:22:0", + "referencedDeclaration": 69, + "src": "6721:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7667:38:0", + "src": "6705:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 699, + "id": 655, "nodeType": "IfStatement", - "src": "7663:52:0", + "src": "6701:52:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 696, + "id": 652, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7707:6:0", + "referencedDeclaration": 1505, + "src": "6745:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 697, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -27010,15 +25754,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7707:8:0", + "src": "6745:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 698, + "id": 654, "nodeType": "ExpressionStatement", - "src": "7707:8:0" + "src": "6745:8:0" } }, { @@ -27028,7 +25772,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 706, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, @@ -27038,12 +25782,12 @@ "arguments": [ { "argumentTypes": null, - "id": 702, + "id": 658, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7747:22:0", + "referencedDeclaration": 69, + "src": "6785:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27059,32 +25803,32 @@ ], "expression": { "argumentTypes": null, - "id": 700, + "id": 656, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7729:13:0", + "referencedDeclaration": 644, + "src": "6767:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 701, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "7729:17:0", + "referencedDeclaration": 1281, + "src": "6767:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 703, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, @@ -27092,7 +25836,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7729:41:0", + "src": "6767:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27104,18 +25848,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 704, + "id": 660, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7773:4:0", + "referencedDeclaration": 1513, + "src": "6811:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 705, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -27123,43 +25867,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7773:12:0", + "src": "6811:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7729:56:0", + "src": "6767:56:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 710, + "id": 666, "nodeType": "IfStatement", - "src": "7725:70:0", + "src": "6763:70:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 707, + "id": 663, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7787:6:0", + "referencedDeclaration": 1505, + "src": "6825:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 708, + "id": 664, "isConstant": false, "isLValue": false, "isPure": false, @@ -27167,15 +25911,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7787:8:0", + "src": "6825:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 709, + "id": 665, "nodeType": "ExpressionStatement", - "src": "7787:8:0" + "src": "6825:8:0" } }, { @@ -27186,18 +25930,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 712, + "id": 668, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7826:4:0", + "referencedDeclaration": 1513, + "src": "6864:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 713, + "id": 669, "isConstant": false, "isLValue": false, "isPure": false, @@ -27205,7 +25949,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7826:12:0", + "src": "6864:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27213,12 +25957,12 @@ }, { "argumentTypes": null, - "id": 714, + "id": 670, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7840:13:0", + "referencedDeclaration": 67, + "src": "6878:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27226,12 +25970,12 @@ }, { "argumentTypes": null, - "id": 715, + "id": 671, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7855:13:0", + "referencedDeclaration": 644, + "src": "6893:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27253,18 +25997,18 @@ "typeString": "uint256" } ], - "id": 711, + "id": 667, "name": "ChangeSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 294, - "src": "7806:19:0", + "referencedDeclaration": 250, + "src": "6844:19:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 716, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -27272,32 +26016,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7806:63:0", + "src": "6844:63:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 717, + "id": 673, "nodeType": "ExpressionStatement", - "src": "7806:63:0" + "src": "6844:63:0" }, { "expression": { "argumentTypes": null, - "id": 720, + "id": 676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 718, + "id": 674, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7879:13:0", + "referencedDeclaration": 67, + "src": "6917:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27307,68 +26051,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 719, + "id": 675, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7895:13:0", + "referencedDeclaration": 644, + "src": "6933:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7879:29:0", + "src": "6917:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 721, + "id": 677, "nodeType": "ExpressionStatement", - "src": "7879:29:0" + "src": "6917:29:0" } ] }, "documentation": null, - "id": 723, + "id": 679, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 691, + "id": 647, "modifierName": { "argumentTypes": null, - "id": 690, + "id": 646, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "7641:9:0", + "referencedDeclaration": 30, + "src": "6679:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7641:11:0" + "src": "6679:11:0" } ], "name": "changeSharedExpenseAllocation", "nodeType": "FunctionDefinition", "parameters": { - "id": 689, + "id": 645, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 688, + "id": 644, "name": "newAllocation", "nodeType": "VariableDeclaration", - "scope": 723, - "src": "7611:21:0", + "scope": 679, + "src": "6649:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27376,10 +26120,10 @@ "typeString": "uint256" }, "typeName": { - "id": 687, + "id": 643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7611:7:0", + "src": "6649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27389,39 +26133,39 @@ "visibility": "internal" } ], - "src": "7610:23:0" + "src": "6648:23:0" }, "payable": false, "returnParameters": { - "id": 692, + "id": 648, "nodeType": "ParameterList", "parameters": [], - "src": "7653:0:0" + "src": "6691:0:0" }, - "scope": 1194, - "src": "7572:343:0", + "scope": 1146, + "src": "6610:343:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 771, + "id": 727, "nodeType": "Block", - "src": "8108:283:0", + "src": "7146:283:0", "statements": [ { "assignments": [ - 736 + 692 ], "declarations": [ { "constant": false, - "id": 736, + "id": 692, "name": "currentShares", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8118:21:0", + "scope": 728, + "src": "7156:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27429,10 +26173,10 @@ "typeString": "uint256" }, "typeName": { - "id": 735, + "id": 691, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8118:7:0", + "src": "7156:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27442,33 +26186,33 @@ "visibility": "internal" } ], - "id": 741, + "id": 697, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 737, + "id": 693, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8142:7:0", + "referencedDeclaration": 73, + "src": "7180:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 739, + "id": 695, "indexExpression": { "argumentTypes": null, - "id": 738, + "id": 694, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8150:3:0", + "referencedDeclaration": 681, + "src": "7188:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27479,28 +26223,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8142:12:0", + "src": "7180:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 740, + "id": 696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8142:19:0", + "referencedDeclaration": 82, + "src": "7180:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8118:43:0" + "src": "7156:43:0" }, { "condition": { @@ -27509,19 +26253,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 744, + "id": 700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 742, + "id": 698, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8175:6:0", + "referencedDeclaration": 683, + "src": "7213:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27531,48 +26275,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 743, + "id": 699, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8185:13:0", + "referencedDeclaration": 692, + "src": "7223:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8175:23:0", + "src": "7213:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 748, + "id": 704, "nodeType": "IfStatement", - "src": "8171:37:0", + "src": "7209:37:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 745, + "id": 701, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "8200:6:0", + "referencedDeclaration": 1505, + "src": "7238:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 746, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -27580,15 +26324,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8200:8:0", + "src": "7238:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 747, + "id": 703, "nodeType": "ExpressionStatement", - "src": "8200:8:0" + "src": "7238:8:0" } }, { @@ -27598,19 +26342,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 751, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 705, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8222:6:0", + "referencedDeclaration": 683, + "src": "7260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27620,27 +26364,27 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 750, + "id": 706, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8231:13:0", + "referencedDeclaration": 692, + "src": "7269:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8222:22:0", + "src": "7260:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 769, + "id": 725, "nodeType": "Block", - "src": "8317:68:0", + "src": "7355:68:0", "statements": [ { "expression": { @@ -27648,12 +26392,12 @@ "arguments": [ { "argumentTypes": null, - "id": 762, + "id": 718, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8343:3:0", + "referencedDeclaration": 681, + "src": "7381:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27664,12 +26408,12 @@ "arguments": [ { "argumentTypes": null, - "id": 765, + "id": 721, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8366:6:0", + "referencedDeclaration": 683, + "src": "7404:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27685,32 +26429,32 @@ ], "expression": { "argumentTypes": null, - "id": 763, + "id": 719, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8348:13:0", + "referencedDeclaration": 692, + "src": "7386:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 764, + "id": 720, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8348:17:0", + "referencedDeclaration": 1281, + "src": "7386:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 766, + "id": 722, "isConstant": false, "isLValue": false, "isPure": false, @@ -27718,7 +26462,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:25:0", + "src": "7386:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27736,18 +26480,18 @@ "typeString": "uint256" } ], - "id": 761, + "id": 717, "name": "removeShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 856, - "src": "8331:11:0", + "referencedDeclaration": 812, + "src": "7369:11:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 767, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -27755,25 +26499,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8331:43:0", + "src": "7369:43:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 724, "nodeType": "ExpressionStatement", - "src": "8331:43:0" + "src": "7369:43:0" } ] }, - "id": 770, + "id": 726, "nodeType": "IfStatement", - "src": "8218:167:0", + "src": "7256:167:0", "trueBody": { - "id": 760, + "id": 716, "nodeType": "Block", - "src": "8246:65:0", + "src": "7284:65:0", "statements": [ { "expression": { @@ -27781,12 +26525,12 @@ "arguments": [ { "argumentTypes": null, - "id": 753, + "id": 709, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8269:3:0", + "referencedDeclaration": 681, + "src": "7307:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27797,12 +26541,12 @@ "arguments": [ { "argumentTypes": null, - "id": 756, + "id": 712, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8285:13:0", + "referencedDeclaration": 692, + "src": "7323:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27818,32 +26562,32 @@ ], "expression": { "argumentTypes": null, - "id": 754, + "id": 710, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8274:6:0", + "referencedDeclaration": 683, + "src": "7312:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 755, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8274:10:0", + "referencedDeclaration": 1281, + "src": "7312:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 757, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -27851,7 +26595,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8274:25:0", + "src": "7312:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27869,18 +26613,18 @@ "typeString": "uint256" } ], - "id": 752, + "id": 708, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "8260:8:0", + "referencedDeclaration": 770, + "src": "7298:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 758, + "id": 714, "isConstant": false, "isLValue": false, "isPure": false, @@ -27888,15 +26632,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8260:40:0", + "src": "7298:40:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 759, + "id": 715, "nodeType": "ExpressionStatement", - "src": "8260:40:0" + "src": "7298:40:0" } ] } @@ -27904,77 +26648,77 @@ ] }, "documentation": null, - "id": 772, + "id": 728, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 730, + "id": 686, "modifierName": { "argumentTypes": null, - "id": 729, + "id": 685, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8078:9:0", + "referencedDeclaration": 290, + "src": "7116:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8078:11:0" + "src": "7116:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 732, + "id": 688, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8103:3:0", + "referencedDeclaration": 681, + "src": "7141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 733, + "id": 689, "modifierName": { "argumentTypes": null, - "id": 731, + "id": 687, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8090:12:0", + "referencedDeclaration": 305, + "src": "7128:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8090:17:0" + "src": "7128:17:0" } ], "name": "allocateShares", "nodeType": "FunctionDefinition", "parameters": { - "id": 728, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 725, + "id": 681, "name": "who", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8042:11:0", + "scope": 728, + "src": "7080:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27982,10 +26726,10 @@ "typeString": "address" }, "typeName": { - "id": 724, + "id": 680, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8042:7:0", + "src": "7080:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27996,11 +26740,11 @@ }, { "constant": false, - "id": 727, + "id": 683, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8055:14:0", + "scope": 728, + "src": "7093:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28008,10 +26752,10 @@ "typeString": "uint256" }, "typeName": { - "id": 726, + "id": 682, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8055:7:0", + "src": "7093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28021,43 +26765,43 @@ "visibility": "internal" } ], - "src": "8041:29:0" + "src": "7079:29:0" }, "payable": false, "returnParameters": { - "id": 734, + "id": 690, "nodeType": "ParameterList", "parameters": [], - "src": "8108:0:0" + "src": "7146:0:0" }, - "scope": 1194, - "src": "8018:373:0", + "scope": 1146, + "src": "7056:373:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 813, + "id": 769, "nodeType": "Block", - "src": "8532:169:0", + "src": "7570:169:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 789, + "id": 745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 784, + "id": 740, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8542:11:0", + "referencedDeclaration": 58, + "src": "7580:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28070,12 +26814,12 @@ "arguments": [ { "argumentTypes": null, - "id": 787, + "id": 743, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8572:6:0", + "referencedDeclaration": 732, + "src": "7610:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28091,32 +26835,32 @@ ], "expression": { "argumentTypes": null, - "id": 785, + "id": 741, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8556:11:0", + "referencedDeclaration": 58, + "src": "7594:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 786, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8556:15:0", + "referencedDeclaration": 1305, + "src": "7594:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 788, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, @@ -28124,26 +26868,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8556:23:0", + "src": "7594:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8542:37:0", + "src": "7580:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 790, + "id": 746, "nodeType": "ExpressionStatement", - "src": "8542:37:0" + "src": "7580:37:0" }, { "expression": { "argumentTypes": null, - "id": 802, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, @@ -28154,26 +26898,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 791, + "id": 747, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8589:7:0", + "referencedDeclaration": 73, + "src": "7627:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 793, + "id": 749, "indexExpression": { "argumentTypes": null, - "id": 792, + "id": 748, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8597:3:0", + "referencedDeclaration": 730, + "src": "7635:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28184,21 +26928,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8589:12:0", + "src": "7627:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 794, + "id": 750, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8589:19:0", + "referencedDeclaration": 82, + "src": "7627:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28211,12 +26955,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 756, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8635:6:0", + "referencedDeclaration": 732, + "src": "7673:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28236,26 +26980,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 795, + "id": 751, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8611:7:0", + "referencedDeclaration": 73, + "src": "7649:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 797, + "id": 753, "indexExpression": { "argumentTypes": null, - "id": 796, + "id": 752, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8619:3:0", + "referencedDeclaration": 730, + "src": "7657:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28266,41 +27010,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8611:12:0", + "src": "7649:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 798, + "id": 754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8611:19:0", + "referencedDeclaration": 82, + "src": "7649:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 799, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8611:23:0", + "referencedDeclaration": 1305, + "src": "7649:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 801, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -28308,21 +27052,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8611:31:0", + "src": "7649:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8589:53:0", + "src": "7627:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 803, + "id": 759, "nodeType": "ExpressionStatement", - "src": "8589:53:0" + "src": "7627:53:0" }, { "expression": { @@ -28330,12 +27074,12 @@ "arguments": [ { "argumentTypes": null, - "id": 805, + "id": 761, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8661:3:0", + "referencedDeclaration": 730, + "src": "7699:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28343,12 +27087,12 @@ }, { "argumentTypes": null, - "id": 806, + "id": 762, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8666:6:0", + "referencedDeclaration": 732, + "src": "7704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28360,26 +27104,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 807, + "id": 763, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8674:7:0", + "referencedDeclaration": 73, + "src": "7712:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 809, + "id": 765, "indexExpression": { "argumentTypes": null, - "id": 808, + "id": 764, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8682:3:0", + "referencedDeclaration": 730, + "src": "7720:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28390,21 +27134,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8674:12:0", + "src": "7712:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 810, + "id": 766, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8674:19:0", + "referencedDeclaration": 82, + "src": "7712:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28426,18 +27170,18 @@ "typeString": "uint256" } ], - "id": 804, + "id": 760, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "8652:8:0", + "referencedDeclaration": 212, + "src": "7690:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 811, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -28445,90 +27189,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8652:42:0", + "src": "7690:42:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 812, + "id": 768, "nodeType": "ExpressionStatement", - "src": "8652:42:0" + "src": "7690:42:0" } ] }, "documentation": null, - "id": 814, + "id": 770, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 779, + "id": 735, "modifierName": { "argumentTypes": null, - "id": 778, + "id": 734, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8502:9:0", + "referencedDeclaration": 290, + "src": "7540:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8502:11:0" + "src": "7540:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 781, + "id": 737, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8527:3:0", + "referencedDeclaration": 730, + "src": "7565:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 782, + "id": 738, "modifierName": { "argumentTypes": null, - "id": 780, + "id": 736, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8514:12:0", + "referencedDeclaration": 305, + "src": "7552:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8514:17:0" + "src": "7552:17:0" } ], "name": "addShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 777, + "id": 733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 730, "name": "who", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8466:11:0", + "scope": 770, + "src": "7504:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28536,10 +27280,10 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8466:7:0", + "src": "7504:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28550,11 +27294,11 @@ }, { "constant": false, - "id": 776, + "id": 732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8479:14:0", + "scope": 770, + "src": "7517:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28562,10 +27306,10 @@ "typeString": "uint256" }, "typeName": { - "id": 775, + "id": 731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8479:7:0", + "src": "7517:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28575,43 +27319,43 @@ "visibility": "internal" } ], - "src": "8465:29:0" + "src": "7503:29:0" }, "payable": false, "returnParameters": { - "id": 783, + "id": 739, "nodeType": "ParameterList", "parameters": [], - "src": "8532:0:0" + "src": "7570:0:0" }, - "scope": 1194, - "src": "8448:253:0", + "scope": 1146, + "src": "7486:253:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 855, + "id": 811, "nodeType": "Block", - "src": "8845:172:0", + "src": "7883:172:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 831, + "id": 787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 826, + "id": 782, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8855:11:0", + "referencedDeclaration": 58, + "src": "7893:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28624,12 +27368,12 @@ "arguments": [ { "argumentTypes": null, - "id": 829, + "id": 785, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8885:6:0", + "referencedDeclaration": 774, + "src": "7923:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28645,32 +27389,32 @@ ], "expression": { "argumentTypes": null, - "id": 827, + "id": 783, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8869:11:0", + "referencedDeclaration": 58, + "src": "7907:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 828, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8869:15:0", + "referencedDeclaration": 1281, + "src": "7907:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 830, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -28678,26 +27422,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8869:23:0", + "src": "7907:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8855:37:0", + "src": "7893:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 832, + "id": 788, "nodeType": "ExpressionStatement", - "src": "8855:37:0" + "src": "7893:37:0" }, { "expression": { "argumentTypes": null, - "id": 844, + "id": 800, "isConstant": false, "isLValue": false, "isPure": false, @@ -28708,26 +27452,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 833, + "id": 789, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8902:7:0", + "referencedDeclaration": 73, + "src": "7940:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 835, + "id": 791, "indexExpression": { "argumentTypes": null, - "id": 834, + "id": 790, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8910:3:0", + "referencedDeclaration": 772, + "src": "7948:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28738,21 +27482,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8902:12:0", + "src": "7940:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 836, + "id": 792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8902:19:0", + "referencedDeclaration": 82, + "src": "7940:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28765,12 +27509,12 @@ "arguments": [ { "argumentTypes": null, - "id": 842, + "id": 798, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8948:6:0", + "referencedDeclaration": 774, + "src": "7986:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28790,26 +27534,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 837, + "id": 793, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8924:7:0", + "referencedDeclaration": 73, + "src": "7962:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 839, + "id": 795, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 794, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8932:3:0", + "referencedDeclaration": 772, + "src": "7970:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28820,41 +27564,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8924:12:0", + "src": "7962:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 840, + "id": 796, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8924:19:0", + "referencedDeclaration": 82, + "src": "7962:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 841, + "id": 797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8924:23:0", + "referencedDeclaration": 1281, + "src": "7962:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 843, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -28862,21 +27606,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8924:31:0", + "src": "7962:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8902:53:0", + "src": "7940:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 845, + "id": 801, "nodeType": "ExpressionStatement", - "src": "8902:53:0" + "src": "7940:53:0" }, { "expression": { @@ -28884,12 +27628,12 @@ "arguments": [ { "argumentTypes": null, - "id": 847, + "id": 803, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8977:3:0", + "referencedDeclaration": 772, + "src": "8015:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28897,12 +27641,12 @@ }, { "argumentTypes": null, - "id": 848, + "id": 804, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8982:6:0", + "referencedDeclaration": 774, + "src": "8020:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28914,26 +27658,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 849, + "id": 805, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8990:7:0", + "referencedDeclaration": 73, + "src": "8028:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 851, + "id": 807, "indexExpression": { "argumentTypes": null, - "id": 850, + "id": 806, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8998:3:0", + "referencedDeclaration": 772, + "src": "8036:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28944,21 +27688,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:12:0", + "src": "8028:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 852, + "id": 808, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8990:19:0", + "referencedDeclaration": 82, + "src": "8028:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28980,18 +27724,18 @@ "typeString": "uint256" } ], - "id": 846, + "id": 802, "name": "RemoveShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 264, - "src": "8965:11:0", + "referencedDeclaration": 220, + "src": "8003:11:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 853, + "id": 809, "isConstant": false, "isLValue": false, "isPure": false, @@ -28999,90 +27743,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8965:45:0", + "src": "8003:45:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 854, + "id": 810, "nodeType": "ExpressionStatement", - "src": "8965:45:0" + "src": "8003:45:0" } ] }, "documentation": null, - "id": 856, + "id": 812, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 821, + "id": 777, "modifierName": { "argumentTypes": null, - "id": 820, + "id": 776, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8815:9:0", + "referencedDeclaration": 290, + "src": "7853:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8815:11:0" + "src": "7853:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 823, + "id": 779, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8840:3:0", + "referencedDeclaration": 772, + "src": "7878:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 824, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 822, + "id": 778, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8827:12:0", + "referencedDeclaration": 305, + "src": "7865:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8827:17:0" + "src": "7865:17:0" } ], "name": "removeShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 819, + "id": 775, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 816, + "id": 772, "name": "who", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8779:11:0", + "scope": 812, + "src": "7817:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29090,10 +27834,10 @@ "typeString": "address" }, "typeName": { - "id": 815, + "id": 771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8779:7:0", + "src": "7817:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29104,11 +27848,11 @@ }, { "constant": false, - "id": 818, + "id": 774, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8792:14:0", + "scope": 812, + "src": "7830:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29116,10 +27860,10 @@ "typeString": "uint256" }, "typeName": { - "id": 817, + "id": 773, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8792:7:0", + "src": "7830:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29129,39 +27873,39 @@ "visibility": "internal" } ], - "src": "8778:29:0" + "src": "7816:29:0" }, "payable": false, "returnParameters": { - "id": 825, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "8845:0:0" + "src": "7883:0:0" }, - "scope": 1194, - "src": "8758:259:0", + "scope": 1146, + "src": "7796:259:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 923, + "id": 879, "nodeType": "Block", - "src": "9430:392:0", + "src": "8468:392:0", "statements": [ { "assignments": [ - 866 + 822 ], "declarations": [ { "constant": false, - "id": 866, + "id": 822, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9440:16:0", + "scope": 880, + "src": "8478:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29169,10 +27913,10 @@ "typeString": "uint256" }, "typeName": { - "id": 865, + "id": 821, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9440:7:0", + "src": "8478:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29182,7 +27926,7 @@ "visibility": "internal" } ], - "id": 871, + "id": 827, "initialValue": { "argumentTypes": null, "arguments": [ @@ -29190,18 +27934,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 868, + "id": 824, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9492:3:0", + "referencedDeclaration": 1500, + "src": "8530:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 869, + "id": 825, "isConstant": false, "isLValue": false, "isPure": false, @@ -29209,7 +27953,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9492:10:0", + "src": "8530:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29223,18 +27967,18 @@ "typeString": "address" } ], - "id": 867, + "id": 823, "name": "calculateTotalWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1113, - "src": "9459:32:0", + "referencedDeclaration": 1066, + "src": "8497:32:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 870, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -29242,14 +27986,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9459:44:0", + "src": "8497:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9440:63:0" + "src": "8478:63:0" }, { "condition": { @@ -29258,19 +28002,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 881, + "id": 837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 872, + "id": 828, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9517:6:0", + "referencedDeclaration": 814, + "src": "8555:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29287,34 +28031,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 875, + "id": 831, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9539:7:0", + "referencedDeclaration": 73, + "src": "8577:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 878, + "id": 834, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 876, + "id": 832, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9547:3:0", + "referencedDeclaration": 1500, + "src": "8585:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 877, + "id": 833, "isConstant": false, "isLValue": false, "isPure": false, @@ -29322,7 +28066,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9547:10:0", + "src": "8585:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29333,21 +28077,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9539:19:0", + "src": "8577:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 879, + "id": 835, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9539:29:0", + "referencedDeclaration": 84, + "src": "8577:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29363,32 +28107,32 @@ ], "expression": { "argumentTypes": null, - "id": 873, + "id": 829, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "9526:8:0", + "referencedDeclaration": 822, + "src": "8564:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 874, + "id": 830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "9526:12:0", + "referencedDeclaration": 1281, + "src": "8564:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 880, + "id": 836, "isConstant": false, "isLValue": false, "isPure": false, @@ -29396,43 +28140,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9526:43:0", + "src": "8564:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9517:52:0", + "src": "8555:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 885, + "id": 841, "nodeType": "IfStatement", - "src": "9513:66:0", + "src": "8551:66:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 882, + "id": 838, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "9571:6:0", + "referencedDeclaration": 1505, + "src": "8609:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 883, + "id": 839, "isConstant": false, "isLValue": false, "isPure": false, @@ -29440,21 +28184,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9571:8:0", + "src": "8609:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 884, + "id": 840, "nodeType": "ExpressionStatement", - "src": "9571:8:0" + "src": "8609:8:0" } }, { "expression": { "argumentTypes": null, - "id": 899, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -29465,34 +28209,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 886, + "id": 842, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9598:7:0", + "referencedDeclaration": 73, + "src": "8636:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 889, + "id": 845, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 887, + "id": 843, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9606:3:0", + "referencedDeclaration": 1500, + "src": "8644:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 888, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -29500,7 +28244,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9606:10:0", + "src": "8644:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29511,21 +28255,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9598:19:0", + "src": "8636:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 890, + "id": 846, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9598:29:0", + "referencedDeclaration": 84, + "src": "8636:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29538,12 +28282,12 @@ "arguments": [ { "argumentTypes": null, - "id": 897, + "id": 853, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9664:6:0", + "referencedDeclaration": 814, + "src": "8702:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29563,34 +28307,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 891, + "id": 847, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9630:7:0", + "referencedDeclaration": 73, + "src": "8668:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 894, + "id": 850, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 892, + "id": 848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9638:3:0", + "referencedDeclaration": 1500, + "src": "8676:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 893, + "id": 849, "isConstant": false, "isLValue": false, "isPure": false, @@ -29598,7 +28342,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9638:10:0", + "src": "8676:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29609,41 +28353,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9630:19:0", + "src": "8668:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 895, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9630:29:0", + "referencedDeclaration": 84, + "src": "8668:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 896, + "id": 852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9630:33:0", + "referencedDeclaration": 1305, + "src": "8668:33:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 898, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, @@ -29651,38 +28395,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9630:41:0", + "src": "8668:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9598:73:0", + "src": "8636:73:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 900, + "id": 856, "nodeType": "ExpressionStatement", - "src": "9598:73:0" + "src": "8636:73:0" }, { "expression": { "argumentTypes": null, - "id": 906, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 901, + "id": 857, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9681:14:0", + "referencedDeclaration": 60, + "src": "8719:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29695,12 +28439,12 @@ "arguments": [ { "argumentTypes": null, - "id": 904, + "id": 860, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9717:6:0", + "referencedDeclaration": 814, + "src": "8755:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29716,32 +28460,32 @@ ], "expression": { "argumentTypes": null, - "id": 902, + "id": 858, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9698:14:0", + "referencedDeclaration": 60, + "src": "8736:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 903, + "id": 859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9698:18:0", + "referencedDeclaration": 1305, + "src": "8736:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 905, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -29749,21 +28493,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9698:26:0", + "src": "8736:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:43:0", + "src": "8719:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 907, + "id": 863, "nodeType": "ExpressionStatement", - "src": "9681:43:0" + "src": "8719:43:0" }, { "expression": { @@ -29771,12 +28515,12 @@ "arguments": [ { "argumentTypes": null, - "id": 913, + "id": 869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9754:6:0", + "referencedDeclaration": 814, + "src": "8792:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29794,18 +28538,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 908, + "id": 864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9734:3:0", + "referencedDeclaration": 1500, + "src": "8772:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 911, + "id": 867, "isConstant": false, "isLValue": false, "isPure": false, @@ -29813,13 +28557,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:10:0", + "src": "8772:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 912, + "id": 868, "isConstant": false, "isLValue": false, "isPure": false, @@ -29827,13 +28571,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:19:0", + "src": "8772:19:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 914, + "id": 870, "isConstant": false, "isLValue": false, "isPure": false, @@ -29841,15 +28585,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9734:27:0", + "src": "8772:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 915, + "id": 871, "nodeType": "ExpressionStatement", - "src": "9734:27:0" + "src": "8772:27:0" }, { "expression": { @@ -29859,18 +28603,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 873, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9780:3:0", + "referencedDeclaration": 1500, + "src": "8818:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 918, + "id": 874, "isConstant": false, "isLValue": false, "isPure": false, @@ -29878,7 +28622,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9780:10:0", + "src": "8818:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29886,12 +28630,12 @@ }, { "argumentTypes": null, - "id": 919, + "id": 875, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9792:6:0", + "referencedDeclaration": 814, + "src": "8830:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29899,12 +28643,12 @@ }, { "argumentTypes": null, - "id": 920, + "id": 876, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9800:14:0", + "referencedDeclaration": 60, + "src": "8838:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29926,18 +28670,18 @@ "typeString": "uint256" } ], - "id": 916, + "id": 872, "name": "Withdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "9771:8:0", + "referencedDeclaration": 194, + "src": "8809:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 921, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -29945,20 +28689,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9771:44:0", + "src": "8809:44:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 922, + "id": 878, "nodeType": "ExpressionStatement", - "src": "9771:44:0" + "src": "8809:44:0" } ] }, "documentation": null, - "id": 924, + "id": 880, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -29969,18 +28713,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 861, + "id": 817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9418:3:0", + "referencedDeclaration": 1500, + "src": "8456:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 862, + "id": 818, "isConstant": false, "isLValue": false, "isPure": false, @@ -29988,44 +28732,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9418:10:0", + "src": "8456:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 863, + "id": 819, "modifierName": { "argumentTypes": null, - "id": 860, + "id": 816, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9405:12:0", + "referencedDeclaration": 305, + "src": "8443:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9405:24:0" + "src": "8443:24:0" } ], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 859, + "id": 815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 858, + "id": 814, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9382:14:0", + "scope": 880, + "src": "8420:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30033,10 +28777,10 @@ "typeString": "uint256" }, "typeName": { - "id": 857, + "id": 813, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9382:7:0", + "src": "8420:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30046,39 +28790,39 @@ "visibility": "internal" } ], - "src": "9381:16:0" + "src": "8419:16:0" }, "payable": false, "returnParameters": { - "id": 864, + "id": 820, "nodeType": "ParameterList", "parameters": [], - "src": "9430:0:0" + "src": "8468:0:0" }, - "scope": 1194, - "src": "9364:458:0", + "scope": 1146, + "src": "8402:458:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1011, + "id": 964, "nodeType": "Block", - "src": "9958:503:0", + "src": "8997:458:0", "statements": [ { "assignments": [ - 936 + 892 ], "declarations": [ { "constant": false, - "id": 936, + "id": 892, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9968:16:0", + "scope": 965, + "src": "9007:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30086,10 +28830,10 @@ "typeString": "uint256" }, "typeName": { - "id": 935, + "id": 891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9968:7:0", + "src": "9007:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30099,7 +28843,7 @@ "visibility": "internal" } ], - "id": 942, + "id": 898, "initialValue": { "argumentTypes": null, "arguments": [ @@ -30107,18 +28851,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 938, + "id": 894, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10025:3:0", + "referencedDeclaration": 1500, + "src": "9064:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 939, + "id": 895, "isConstant": false, "isLValue": false, "isPure": false, @@ -30126,7 +28870,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10025:10:0", + "src": "9064:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30134,12 +28878,12 @@ }, { "argumentTypes": null, - "id": 940, + "id": 896, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10037:5:0", + "referencedDeclaration": 884, + "src": "9076:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30157,18 +28901,18 @@ "typeString": "address" } ], - "id": 937, + "id": 893, "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "9987:37:0", + "referencedDeclaration": 1116, + "src": "9026:37:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 941, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -30176,14 +28920,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9987:56:0", + "src": "9026:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9968:75:0" + "src": "9007:75:0" }, { "condition": { @@ -30192,19 +28936,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 954, + "id": 910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 943, + "id": 899, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10057:6:0", + "referencedDeclaration": 882, + "src": "9096:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30223,34 +28967,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 946, + "id": 902, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10079:7:0", + "referencedDeclaration": 73, + "src": "9118:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 949, + "id": 905, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 903, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10087:3:0", + "referencedDeclaration": 1500, + "src": "9126:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 948, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, @@ -30258,7 +29002,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10087:10:0", + "src": "9126:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30269,35 +29013,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:19:0", + "src": "9118:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 950, + "id": 906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10079:35:0", + "referencedDeclaration": 90, + "src": "9118:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 952, + "id": 908, "indexExpression": { "argumentTypes": null, - "id": 951, + "id": 907, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10115:5:0", + "referencedDeclaration": 884, + "src": "9154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30308,7 +29052,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:42:0", + "src": "9118:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30324,32 +29068,32 @@ ], "expression": { "argumentTypes": null, - "id": 944, + "id": 900, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "10066:8:0", + "referencedDeclaration": 892, + "src": "9105:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 945, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "10066:12:0", + "referencedDeclaration": 1281, + "src": "9105:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 953, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -30357,43 +29101,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10066:56:0", + "src": "9105:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10057:65:0", + "src": "9096:65:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 958, + "id": 914, "nodeType": "IfStatement", - "src": "10053:79:0", + "src": "9092:79:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 955, + "id": 911, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10124:6:0", + "referencedDeclaration": 1505, + "src": "9163:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 956, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -30401,21 +29145,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10124:8:0", + "src": "9163:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 957, + "id": 913, "nodeType": "ExpressionStatement", - "src": "10124:8:0" + "src": "9163:8:0" } }, { "expression": { "argumentTypes": null, - "id": 976, + "id": 932, "isConstant": false, "isLValue": false, "isPure": false, @@ -30428,34 +29172,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 959, + "id": 915, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10143:7:0", + "referencedDeclaration": 73, + "src": "9182:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 962, + "id": 918, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 960, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10151:3:0", + "referencedDeclaration": 1500, + "src": "9190:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 961, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -30463,7 +29207,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10151:10:0", + "src": "9190:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30474,35 +29218,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10143:19:0", + "src": "9182:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 963, + "id": 919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10143:35:0", + "referencedDeclaration": 90, + "src": "9182:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 965, + "id": 921, "indexExpression": { "argumentTypes": null, - "id": 964, + "id": 920, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10179:5:0", + "referencedDeclaration": 884, + "src": "9218:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30513,7 +29257,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10143:42:0", + "src": "9182:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30526,12 +29270,12 @@ "arguments": [ { "argumentTypes": null, - "id": 974, + "id": 930, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10235:6:0", + "referencedDeclaration": 882, + "src": "9274:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30553,34 +29297,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 966, + "id": 922, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10188:7:0", + "referencedDeclaration": 73, + "src": "9227:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 969, + "id": 925, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 923, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10196:3:0", + "referencedDeclaration": 1500, + "src": "9235:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 968, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -30588,7 +29332,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10196:10:0", + "src": "9235:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30599,35 +29343,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:19:0", + "src": "9227:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 970, + "id": 926, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10188:35:0", + "referencedDeclaration": 90, + "src": "9227:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 972, + "id": 928, "indexExpression": { "argumentTypes": null, - "id": 971, + "id": 927, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10224:5:0", + "referencedDeclaration": 884, + "src": "9263:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30638,27 +29382,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:42:0", + "src": "9227:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 973, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10188:46:0", + "referencedDeclaration": 1305, + "src": "9227:46:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 975, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -30666,81 +29410,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10188:54:0", + "src": "9227:54:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10143:99:0", + "src": "9182:99:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 977, + "id": 933, "nodeType": "ExpressionStatement", - "src": "10143:99:0" + "src": "9182:99:0" }, { "expression": { "argumentTypes": null, - "id": 989, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10252:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "id": 979, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10259:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10252:13:0", + "id": 934, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9291:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 936, + "indexExpression": { + "argumentTypes": null, + "id": 935, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9298:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 981, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10252:28:0", + "nodeType": "IndexAccess", + "src": "9291:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30753,12 +29481,12 @@ "arguments": [ { "argumentTypes": null, - "id": 987, + "id": 941, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10316:6:0", + "referencedDeclaration": 882, + "src": "9325:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30774,75 +29502,59 @@ ], "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 982, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10283:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 984, - "indexExpression": { - "argumentTypes": null, - "id": 983, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10283:13:0", + "id": 937, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9307:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 939, + "indexExpression": { + "argumentTypes": null, + "id": 938, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9314:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 985, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10283:28:0", + "nodeType": "IndexAccess", + "src": "9307:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 986, + "id": 940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10283:32:0", + "referencedDeclaration": 1305, + "src": "9307:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 988, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -30850,21 +29562,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10283:40:0", + "src": "9307:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10252:71:0", + "src": "9291:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 990, + "id": 944, "nodeType": "ExpressionStatement", - "src": "10252:71:0" + "src": "9291:41:0" }, { "expression": { @@ -30874,18 +29586,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 995, + "id": 949, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10355:3:0", + "referencedDeclaration": 1500, + "src": "9364:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 996, + "id": 950, "isConstant": false, "isLValue": false, "isPure": false, @@ -30893,7 +29605,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10355:10:0", + "src": "9364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30901,12 +29613,12 @@ }, { "argumentTypes": null, - "id": 997, + "id": 951, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10367:6:0", + "referencedDeclaration": 882, + "src": "9376:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30929,12 +29641,12 @@ "arguments": [ { "argumentTypes": null, - "id": 992, + "id": 946, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10339:5:0", + "referencedDeclaration": 884, + "src": "9348:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30948,18 +29660,18 @@ "typeString": "address" } ], - "id": 991, + "id": 945, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "10333:5:0", + "referencedDeclaration": 1213, + "src": "9342:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 993, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, @@ -30967,27 +29679,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:12:0", + "src": "9342:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 994, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 1212, - "src": "10333:21:0", + "referencedDeclaration": 1164, + "src": "9342:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 998, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -30995,15 +29707,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:41:0", + "src": "9342:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 999, + "id": 953, "nodeType": "ExpressionStatement", - "src": "10333:41:0" + "src": "9342:41:0" }, { "expression": { @@ -31013,18 +29725,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1001, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10398:3:0", + "referencedDeclaration": 1500, + "src": "9407:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1002, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -31032,7 +29744,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10398:10:0", + "src": "9407:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31040,12 +29752,12 @@ }, { "argumentTypes": null, - "id": 1003, + "id": 957, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10410:6:0", + "referencedDeclaration": 882, + "src": "9419:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31053,68 +29765,52 @@ }, { "argumentTypes": null, - "id": 1004, + "id": 958, "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10418:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1005, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10425:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1007, - "indexExpression": { - "argumentTypes": null, - "id": 1006, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10425:13:0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9427:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 959, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9434:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "id": 960, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9441:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1008, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10425:28:0", + "nodeType": "IndexAccess", + "src": "9434:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31140,18 +29836,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 954, "name": "TokenWithdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "10384:13:0", + "referencedDeclaration": 204, + "src": "9393:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,address,uint256)" } }, - "id": 1009, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -31159,20 +29855,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10384:70:0", + "src": "9393:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1010, + "id": 963, "nodeType": "ExpressionStatement", - "src": "10384:70:0" + "src": "9393:55:0" } ] }, "documentation": null, - "id": 1012, + "id": 965, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -31183,18 +29879,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 931, + "id": 887, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9946:3:0", + "referencedDeclaration": 1500, + "src": "8985:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 932, + "id": 888, "isConstant": false, "isLValue": false, "isPure": false, @@ -31202,44 +29898,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9946:10:0", + "src": "8985:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 933, + "id": 889, "modifierName": { "argumentTypes": null, - "id": 930, + "id": 886, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9933:12:0", + "referencedDeclaration": 305, + "src": "8972:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9933:24:0" + "src": "8972:24:0" } ], "name": "withdrawToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 929, + "id": 885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 926, + "id": 882, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9895:14:0", + "scope": 965, + "src": "8934:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31247,10 +29943,10 @@ "typeString": "uint256" }, "typeName": { - "id": 925, + "id": 881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9895:7:0", + "src": "8934:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31261,11 +29957,11 @@ }, { "constant": false, - "id": 928, + "id": 884, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9911:13:0", + "scope": 965, + "src": "8950:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31273,10 +29969,10 @@ "typeString": "address" }, "typeName": { - "id": 927, + "id": 883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9911:7:0", + "src": "8950:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31286,26 +29982,26 @@ "visibility": "internal" } ], - "src": "9894:31:0" + "src": "8933:31:0" }, "payable": false, "returnParameters": { - "id": 934, + "id": 890, "nodeType": "ParameterList", "parameters": [], - "src": "9958:0:0" + "src": "8997:0:0" }, - "scope": 1194, - "src": "9872:589:0", + "scope": 1146, + "src": "8911:544:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1050, + "id": 1003, "nodeType": "Block", - "src": "10726:267:0", + "src": "9720:267:0", "statements": [ { "condition": { @@ -31314,19 +30010,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1024, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1021, + "id": 974, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10740:6:0", + "referencedDeclaration": 967, + "src": "9734:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31339,18 +30035,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1022, + "id": 975, "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "10749:39:0", + "referencedDeclaration": 1127, + "src": "9743:39:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1023, + "id": 976, "isConstant": false, "isLValue": false, "isPure": false, @@ -31358,43 +30054,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10749:41:0", + "src": "9743:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10740:50:0", + "src": "9734:50:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1028, + "id": 981, "nodeType": "IfStatement", - "src": "10736:64:0", + "src": "9730:64:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 1025, + "id": 978, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10792:6:0", + "referencedDeclaration": 1505, + "src": "9786:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1026, + "id": 979, "isConstant": false, "isLValue": false, "isPure": false, @@ -31402,33 +30098,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10792:8:0", + "src": "9786:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1027, + "id": 980, "nodeType": "ExpressionStatement", - "src": "10792:8:0" + "src": "9786:8:0" } }, { "expression": { "argumentTypes": null, - "id": 1034, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1029, + "id": 982, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10819:22:0", + "referencedDeclaration": 69, + "src": "9813:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31441,12 +30137,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1032, + "id": 985, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10871:6:0", + "referencedDeclaration": 967, + "src": "9865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31462,32 +30158,32 @@ ], "expression": { "argumentTypes": null, - "id": 1030, + "id": 983, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10844:22:0", + "referencedDeclaration": 69, + "src": "9838:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1031, + "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10844:26:0", + "referencedDeclaration": 1305, + "src": "9838:26:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1033, + "id": 986, "isConstant": false, "isLValue": false, "isPure": false, @@ -31495,21 +30191,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10844:34:0", + "src": "9838:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10819:59:0", + "src": "9813:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1035, + "id": 988, "nodeType": "ExpressionStatement", - "src": "10819:59:0" + "src": "9813:59:0" }, { "expression": { @@ -31517,12 +30213,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1039, + "id": 992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10900:6:0", + "referencedDeclaration": 967, + "src": "9894:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31538,18 +30234,18 @@ ], "expression": { "argumentTypes": null, - "id": 1036, + "id": 989, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10888:2:0", + "referencedDeclaration": 969, + "src": "9882:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1038, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -31557,13 +30253,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10888:11:0", + "src": "9882:11:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1040, + "id": 993, "isConstant": false, "isLValue": false, "isPure": false, @@ -31571,15 +30267,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10888:19:0", + "src": "9882:19:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 994, "nodeType": "ExpressionStatement", - "src": "10888:19:0" + "src": "9882:19:0" }, { "expression": { @@ -31589,18 +30285,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1043, + "id": 996, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10939:3:0", + "referencedDeclaration": 1500, + "src": "9933:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1044, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, @@ -31608,7 +30304,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10939:10:0", + "src": "9933:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31616,12 +30312,12 @@ }, { "argumentTypes": null, - "id": 1045, + "id": 998, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10951:2:0", + "referencedDeclaration": 969, + "src": "9945:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31629,12 +30325,12 @@ }, { "argumentTypes": null, - "id": 1046, + "id": 999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10955:6:0", + "referencedDeclaration": 967, + "src": "9949:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31642,12 +30338,12 @@ }, { "argumentTypes": null, - "id": 1047, + "id": 1000, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10963:22:0", + "referencedDeclaration": 69, + "src": "9957:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31673,18 +30369,18 @@ "typeString": "uint256" } ], - "id": 1042, + "id": 995, "name": "WithdrawSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 304, - "src": "10917:21:0", + "referencedDeclaration": 260, + "src": "9911:21:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 1048, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -31692,57 +30388,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10917:69:0", + "src": "9911:69:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "10917:69:0" + "src": "9911:69:0" } ] }, "documentation": null, - "id": 1051, + "id": 1004, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 1019, + "id": 972, "modifierName": { "argumentTypes": null, - "id": 1018, + "id": 971, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "10714:9:0", + "referencedDeclaration": 290, + "src": "9708:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "10714:11:0" + "src": "9708:11:0" } ], "name": "withdrawSharedExpense", "nodeType": "FunctionDefinition", "parameters": { - "id": 1017, + "id": 970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1014, + "id": 967, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10679:14:0", + "scope": 1004, + "src": "9673:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31750,10 +30446,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1013, + "id": 966, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10679:7:0", + "src": "9673:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31764,11 +30460,11 @@ }, { "constant": false, - "id": 1016, + "id": 969, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10695:10:0", + "scope": 1004, + "src": "9689:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31776,10 +30472,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10695:7:0", + "src": "9689:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31789,39 +30485,39 @@ "visibility": "internal" } ], - "src": "10678:28:0" + "src": "9672:28:0" }, "payable": false, "returnParameters": { - "id": 1020, + "id": 973, "nodeType": "ParameterList", "parameters": [], - "src": "10726:0:0" + "src": "9720:0:0" }, - "scope": 1194, - "src": "10648:345:0", + "scope": 1146, + "src": "9642:345:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1112, + "id": 1065, "nodeType": "Block", - "src": "11276:651:0", + "src": "10270:651:0", "statements": [ { "assignments": [ - 1062 + 1015 ], "declarations": [ { "constant": false, - "id": 1062, + "id": 1015, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11424:18:0", + "scope": 1066, + "src": "10418:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31829,10 +30525,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1061, + "id": 1014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11424:7:0", + "src": "10418:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31842,18 +30538,18 @@ "visibility": "internal" } ], - "id": 1068, + "id": 1021, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1066, + "id": 1019, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "11462:14:0", + "referencedDeclaration": 60, + "src": "10456:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31871,18 +30567,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1063, + "id": 1016, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "11445:4:0", + "referencedDeclaration": 1513, + "src": "10439:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 1064, + "id": 1017, "isConstant": false, "isLValue": false, "isPure": false, @@ -31890,27 +30586,27 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "11445:12:0", + "src": "10439:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1065, + "id": 1018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11445:16:0", + "referencedDeclaration": 1305, + "src": "10439:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1067, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": false, @@ -31918,31 +30614,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11445:32:0", + "src": "10439:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11424:53:0" + "src": "10418:53:0" }, { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1069, + "id": 1022, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11487:10:0", + "referencedDeclaration": 1015, + "src": "10481:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31955,12 +30651,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1072, + "id": 1025, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "11515:13:0", + "referencedDeclaration": 67, + "src": "10509:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31976,32 +30672,32 @@ ], "expression": { "argumentTypes": null, - "id": 1070, + "id": 1023, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11500:10:0", + "referencedDeclaration": 1015, + "src": "10494:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1071, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "11500:14:0", + "referencedDeclaration": 1281, + "src": "10494:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1073, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -32009,38 +30705,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11500:29:0", + "src": "10494:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11487:42:0", + "src": "10481:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1075, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "11487:42:0" + "src": "10481:42:0" }, { "expression": { "argumentTypes": null, - "id": 1081, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1076, + "id": 1029, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11539:10:0", + "referencedDeclaration": 1015, + "src": "10533:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32053,12 +30749,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1079, + "id": 1032, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "11567:22:0", + "referencedDeclaration": 69, + "src": "10561:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32074,32 +30770,32 @@ ], "expression": { "argumentTypes": null, - "id": 1077, + "id": 1030, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11552:10:0", + "referencedDeclaration": 1015, + "src": "10546:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11552:14:0", + "referencedDeclaration": 1305, + "src": "10546:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1080, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, @@ -32107,34 +30803,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11552:38:0", + "src": "10546:38:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11539:51:0", + "src": "10533:51:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1082, + "id": 1035, "nodeType": "ExpressionStatement", - "src": "11539:51:0" + "src": "10533:51:0" }, { "assignments": [ - 1084 + 1037 ], "declarations": [ { "constant": false, - "id": 1084, + "id": 1037, "name": "ethPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11710:22:0", + "scope": 1066, + "src": "10704:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32142,10 +30838,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1083, + "id": 1036, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11710:7:0", + "src": "10704:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32155,18 +30851,18 @@ "visibility": "internal" } ], - "id": 1090, + "id": 1043, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1087, + "id": 1040, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "11754:11:0", + "referencedDeclaration": 58, + "src": "10748:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32174,12 +30870,12 @@ }, { "argumentTypes": null, - "id": 1088, + "id": 1041, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11767:9:0", + "referencedDeclaration": 65, + "src": "10761:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32199,32 +30895,32 @@ ], "expression": { "argumentTypes": null, - "id": 1085, + "id": 1038, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11735:10:0", + "referencedDeclaration": 1015, + "src": "10729:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1086, + "id": 1039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "11735:18:0", + "referencedDeclaration": 1344, + "src": "10729:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1089, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -32232,27 +30928,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11735:42:0", + "src": "10729:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11710:67:0" + "src": "10704:67:0" }, { "assignments": [ - 1092 + 1045 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1045, "name": "ethPPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11788:14:0", + "scope": 1066, + "src": "10782:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32260,10 +30956,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1091, + "id": 1044, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11788:7:0", + "src": "10782:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32273,7 +30969,7 @@ "visibility": "internal" } ], - "id": 1100, + "id": 1053, "initialValue": { "argumentTypes": null, "arguments": [ @@ -32283,26 +30979,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1095, + "id": 1048, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "11824:7:0", + "referencedDeclaration": 73, + "src": "10818:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1097, + "id": 1050, "indexExpression": { "argumentTypes": null, - "id": 1096, + "id": 1049, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11832:3:0", + "referencedDeclaration": 1006, + "src": "10826:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32313,21 +31009,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11824:12:0", + "src": "10818:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1098, + "id": 1051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11824:19:0", + "referencedDeclaration": 82, + "src": "10818:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32343,32 +31039,32 @@ ], "expression": { "argumentTypes": null, - "id": 1093, + "id": 1046, "name": "ethPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "11805:14:0", + "referencedDeclaration": 1037, + "src": "10799:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1094, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "11805:18:0", + "referencedDeclaration": 1243, + "src": "10799:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1099, + "id": 1052, "isConstant": false, "isLValue": false, "isPure": false, @@ -32376,27 +31072,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11805:39:0", + "src": "10799:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11788:56:0" + "src": "10782:56:0" }, { "assignments": [ - 1102 + 1055 ], "declarations": [ { "constant": false, - "id": 1102, + "id": 1055, "name": "ethVal", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11854:14:0", + "scope": 1066, + "src": "10848:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32404,10 +31100,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1101, + "id": 1054, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11854:7:0", + "src": "10848:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32417,7 +31113,7 @@ "visibility": "internal" } ], - "id": 1109, + "id": 1062, "initialValue": { "argumentTypes": null, "arguments": [ @@ -32427,7 +31123,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1107, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": true, @@ -32435,14 +31131,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1105, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11882:2:0", + "src": "10876:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -32454,18 +31150,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1106, + "id": 1059, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11886:9:0", + "referencedDeclaration": 65, + "src": "10880:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11882:13:0", + "src": "10876:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32481,32 +31177,32 @@ ], "expression": { "argumentTypes": null, - "id": 1103, + "id": 1056, "name": "ethPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "11871:6:0", + "referencedDeclaration": 1045, + "src": "10865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1104, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "11871:10:0", + "referencedDeclaration": 1261, + "src": "10865:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1108, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -32514,38 +31210,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11871:25:0", + "src": "10865:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11854:42:0" + "src": "10848:42:0" }, { "expression": { "argumentTypes": null, - "id": 1110, + "id": 1063, "name": "ethVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "11914:6:0", + "referencedDeclaration": 1055, + "src": "10908:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1060, - "id": 1111, + "functionReturnParameters": 1013, + "id": 1064, "nodeType": "Return", - "src": "11907:13:0" + "src": "10901:13:0" } ] }, "documentation": null, - "id": 1113, + "id": 1066, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -32554,49 +31250,49 @@ "arguments": [ { "argumentTypes": null, - "id": 1056, + "id": 1009, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11253:3:0", + "referencedDeclaration": 1006, + "src": "10247:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 1057, + "id": 1010, "modifierName": { "argumentTypes": null, - "id": 1055, + "id": 1008, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "11240:12:0", + "referencedDeclaration": 305, + "src": "10234:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "11240:17:0" + "src": "10234:17:0" } ], "name": "calculateTotalWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1054, + "id": 1007, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1053, + "id": 1006, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11211:11:0", + "scope": 1066, + "src": "10205:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32604,10 +31300,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 1005, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11211:7:0", + "src": "10205:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32617,20 +31313,20 @@ "visibility": "internal" } ], - "src": "11210:13:0" + "src": "10204:13:0" }, "payable": false, "returnParameters": { - "id": 1060, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1059, + "id": 1012, "name": "", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11267:7:0", + "scope": 1066, + "src": "10261:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32638,10 +31334,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1058, + "id": 1011, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11267:7:0", + "src": "10261:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32651,32 +31347,32 @@ "visibility": "internal" } ], - "src": "11266:9:0" + "src": "10260:9:0" }, - "scope": 1194, - "src": "11169:758:0", + "scope": 1146, + "src": "10163:758:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1163, + "id": 1115, "nodeType": "Block", - "src": "12042:418:0", + "src": "11036:403:0", "statements": [ { "assignments": [ - 1123 + 1076 ], "declarations": [ { "constant": false, - "id": 1123, + "id": 1076, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12052:18:0", + "scope": 1116, + "src": "11046:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32684,10 +31380,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1122, + "id": 1075, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12052:7:0", + "src": "11046:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32697,61 +31393,45 @@ "visibility": "internal" } ], - "id": 1133, + "id": 1085, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1128, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "12102:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1130, - "indexExpression": { - "argumentTypes": null, - "id": 1129, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12109:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12102:13:0", + "id": 1081, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "11096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 1083, + "indexExpression": { + "argumentTypes": null, + "id": 1082, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1070, + "src": "11103:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1131, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "12102:28:0", + "nodeType": "IndexAccess", + "src": "11096:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32770,12 +31450,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1125, + "id": 1078, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12091:5:0", + "referencedDeclaration": 1070, + "src": "11085:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32789,18 +31469,18 @@ "typeString": "address" } ], - "id": 1124, + "id": 1077, "name": "checkERC20Balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 452, - "src": "12073:17:0", + "referencedDeclaration": 408, + "src": "11067:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1126, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -32808,27 +31488,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:24:0", + "src": "11067:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1127, + "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "12073:28:0", + "referencedDeclaration": 1305, + "src": "11067:28:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1132, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, @@ -32836,27 +31516,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:58:0", + "src": "11067:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12052:79:0" + "src": "11046:64:0" }, { "assignments": [ - 1135 + 1087 ], "declarations": [ { "constant": false, - "id": 1135, + "id": 1087, "name": "tokPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12243:22:0", + "scope": 1116, + "src": "11222:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32864,10 +31544,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1134, + "id": 1086, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12243:7:0", + "src": "11222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32877,18 +31557,18 @@ "visibility": "internal" } ], - "id": 1141, + "id": 1093, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1138, + "id": 1090, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "12287:11:0", + "referencedDeclaration": 58, + "src": "11266:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32896,12 +31576,12 @@ }, { "argumentTypes": null, - "id": 1139, + "id": 1091, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12300:9:0", + "referencedDeclaration": 65, + "src": "11279:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32921,32 +31601,32 @@ ], "expression": { "argumentTypes": null, - "id": 1136, + "id": 1088, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1123, - "src": "12268:10:0", + "referencedDeclaration": 1076, + "src": "11247:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1137, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12268:18:0", + "referencedDeclaration": 1344, + "src": "11247:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1140, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": false, @@ -32954,27 +31634,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12268:42:0", + "src": "11247:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12243:67:0" + "src": "11222:67:0" }, { "assignments": [ - 1143 + 1095 ], "declarations": [ { "constant": false, - "id": 1143, + "id": 1095, "name": "tokPPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12321:14:0", + "scope": 1116, + "src": "11300:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32982,10 +31662,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1142, + "id": 1094, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12321:7:0", + "src": "11300:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32995,7 +31675,7 @@ "visibility": "internal" } ], - "id": 1151, + "id": 1103, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33005,26 +31685,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1146, + "id": 1098, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "12357:7:0", + "referencedDeclaration": 73, + "src": "11336:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1148, + "id": 1100, "indexExpression": { "argumentTypes": null, - "id": 1147, + "id": 1099, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1115, - "src": "12365:3:0", + "referencedDeclaration": 1068, + "src": "11344:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33035,21 +31715,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12357:12:0", + "src": "11336:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1149, + "id": 1101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "12357:19:0", + "referencedDeclaration": 82, + "src": "11336:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33065,32 +31745,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1096, "name": "tokPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1135, - "src": "12338:14:0", + "referencedDeclaration": 1087, + "src": "11317:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1145, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "12338:18:0", + "referencedDeclaration": 1243, + "src": "11317:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1150, + "id": 1102, "isConstant": false, "isLValue": false, "isPure": false, @@ -33098,27 +31778,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12338:39:0", + "src": "11317:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12321:56:0" + "src": "11300:56:0" }, { "assignments": [ - 1153 + 1105 ], "declarations": [ { "constant": false, - "id": 1153, + "id": 1105, "name": "tokVal", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12387:14:0", + "scope": 1116, + "src": "11366:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33126,10 +31806,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1152, + "id": 1104, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12387:7:0", + "src": "11366:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33139,7 +31819,7 @@ "visibility": "internal" } ], - "id": 1160, + "id": 1112, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33149,7 +31829,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1158, + "id": 1110, "isConstant": false, "isLValue": false, "isPure": true, @@ -33157,14 +31837,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1156, + "id": 1108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12415:2:0", + "src": "11394:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -33176,18 +31856,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1157, + "id": 1109, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12419:9:0", + "referencedDeclaration": 65, + "src": "11398:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12415:13:0", + "src": "11394:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33203,32 +31883,32 @@ ], "expression": { "argumentTypes": null, - "id": 1154, + "id": 1106, "name": "tokPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "12404:6:0", + "referencedDeclaration": 1095, + "src": "11383:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1155, + "id": 1107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "12404:10:0", + "referencedDeclaration": 1261, + "src": "11383:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1159, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -33236,38 +31916,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12404:25:0", + "src": "11383:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12387:42:0" + "src": "11366:42:0" }, { "expression": { "argumentTypes": null, - "id": 1161, + "id": 1113, "name": "tokVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1153, - "src": "12447:6:0", + "referencedDeclaration": 1105, + "src": "11426:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1121, - "id": 1162, + "functionReturnParameters": 1074, + "id": 1114, "nodeType": "Return", - "src": "12440:13:0" + "src": "11419:13:0" } ] }, "documentation": null, - "id": 1164, + "id": 1116, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33275,16 +31955,16 @@ "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1118, + "id": 1071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1115, + "id": 1068, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11981:11:0", + "scope": 1116, + "src": "10975:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33292,10 +31972,10 @@ "typeString": "address" }, "typeName": { - "id": 1114, + "id": 1067, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11981:7:0", + "src": "10975:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33306,11 +31986,11 @@ }, { "constant": false, - "id": 1117, + "id": 1070, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11994:13:0", + "scope": 1116, + "src": "10988:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33318,10 +31998,10 @@ "typeString": "address" }, "typeName": { - "id": 1116, + "id": 1069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11994:7:0", + "src": "10988:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33331,20 +32011,20 @@ "visibility": "internal" } ], - "src": "11980:28:0" + "src": "10974:28:0" }, "payable": false, "returnParameters": { - "id": 1121, + "id": 1074, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1073, "name": "", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12033:7:0", + "scope": 1116, + "src": "11027:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33352,10 +32032,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1119, + "id": 1072, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12033:7:0", + "src": "11027:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33365,19 +32045,19 @@ "visibility": "internal" } ], - "src": "12032:9:0" + "src": "11026:9:0" }, - "scope": 1194, - "src": "11934:526:0", + "scope": 1146, + "src": "10928:511:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1174, + "id": 1126, "nodeType": "Block", - "src": "12550:65:0", + "src": "11529:65:0", "statements": [ { "expression": { @@ -33385,12 +32065,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1171, + "id": 1123, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "12585:22:0", + "referencedDeclaration": 69, + "src": "11564:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33406,32 +32086,32 @@ ], "expression": { "argumentTypes": null, - "id": 1169, + "id": 1121, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "12567:13:0", + "referencedDeclaration": 67, + "src": "11546:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1170, + "id": 1122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "12567:17:0", + "referencedDeclaration": 1281, + "src": "11546:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1172, + "id": 1124, "isConstant": false, "isLValue": false, "isPure": false, @@ -33439,21 +32119,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12567:41:0", + "src": "11546:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1168, - "id": 1173, + "functionReturnParameters": 1120, + "id": 1125, "nodeType": "Return", - "src": "12560:48:0" + "src": "11539:48:0" } ] }, "documentation": null, - "id": 1175, + "id": 1127, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33461,23 +32141,23 @@ "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1165, + "id": 1117, "nodeType": "ParameterList", "parameters": [], - "src": "12514:2:0" + "src": "11493:2:0" }, "payable": false, "returnParameters": { - "id": 1168, + "id": 1120, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1167, + "id": 1119, "name": "", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "12541:7:0", + "scope": 1127, + "src": "11520:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33485,10 +32165,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1166, + "id": 1118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12541:7:0", + "src": "11520:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33498,19 +32178,19 @@ "visibility": "internal" } ], - "src": "12540:9:0" + "src": "11519:9:0" }, - "scope": 1194, - "src": "12466:149:0", + "scope": 1146, + "src": "11445:149:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1192, + "id": 1144, "nodeType": "Block", - "src": "12737:39:0", + "src": "11716:39:0", "statements": [ { "expression": { @@ -33518,12 +32198,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1179, - "src": "12764:1:0", + "referencedDeclaration": 1131, + "src": "11743:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33531,12 +32211,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1141, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1181, - "src": "12767:1:0", + "referencedDeclaration": 1133, + "src": "11746:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33556,32 +32236,32 @@ ], "expression": { "argumentTypes": null, - "id": 1186, + "id": 1138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "12754:1:0", + "referencedDeclaration": 1129, + "src": "11733:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1187, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12754:9:0", + "referencedDeclaration": 1344, + "src": "11733:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1190, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -33589,21 +32269,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12754:15:0", + "src": "11733:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1185, - "id": 1191, + "functionReturnParameters": 1137, + "id": 1143, "nodeType": "Return", - "src": "12747:22:0" + "src": "11726:22:0" } ] }, "documentation": null, - "id": 1193, + "id": 1145, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33611,16 +32291,16 @@ "name": "delegatePercent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1182, + "id": 1134, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1177, + "id": 1129, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12670:9:0", + "scope": 1145, + "src": "11649:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33628,10 +32308,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1176, + "id": 1128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12670:7:0", + "src": "11649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33642,11 +32322,11 @@ }, { "constant": false, - "id": 1179, + "id": 1131, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12681:9:0", + "scope": 1145, + "src": "11660:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33654,10 +32334,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1178, + "id": 1130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12681:7:0", + "src": "11660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33668,11 +32348,11 @@ }, { "constant": false, - "id": 1181, + "id": 1133, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12692:9:0", + "scope": 1145, + "src": "11671:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33680,10 +32360,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1180, + "id": 1132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12692:7:0", + "src": "11671:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33693,20 +32373,20 @@ "visibility": "internal" } ], - "src": "12669:33:0" + "src": "11648:33:0" }, "payable": false, "returnParameters": { - "id": 1185, + "id": 1137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 1136, "name": "", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12728:7:0", + "scope": 1145, + "src": "11707:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33714,10 +32394,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1183, + "id": 1135, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12728:7:0", + "src": "11707:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33727,17 +32407,17 @@ "visibility": "internal" } ], - "src": "12727:9:0" + "src": "11706:9:0" }, - "scope": 1194, - "src": "12645:131:0", + "scope": 1146, + "src": "11624:131:0", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1394, - "src": "989:11789:0" + "scope": 1346, + "src": "444:11313:0" }, { "baseContracts": [], @@ -33745,20 +32425,20 @@ "contractKind": "contract", "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", "fullyImplemented": false, - "id": 1221, + "id": 1173, "linearizedBaseContracts": [ - 1221 + 1173 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1196, + "id": 1148, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 1221, - "src": "12932:26:0", + "scope": 1173, + "src": "11911:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -33766,10 +32446,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1195, + "id": 1147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12932:7:0", + "src": "11911:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33781,7 +32461,7 @@ { "body": null, "documentation": null, - "id": 1203, + "id": 1155, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -33789,16 +32469,16 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1199, + "id": 1151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1198, + "id": 1150, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "12981:11:0", + "scope": 1155, + "src": "11960:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33806,10 +32486,10 @@ "typeString": "address" }, "typeName": { - "id": 1197, + "id": 1149, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12981:7:0", + "src": "11960:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33819,20 +32499,20 @@ "visibility": "internal" } ], - "src": "12980:13:0" + "src": "11959:13:0" }, "payable": false, "returnParameters": { - "id": 1202, + "id": 1154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1201, + "id": 1153, "name": "", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "13019:7:0", + "scope": 1155, + "src": "11998:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33840,10 +32520,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1200, + "id": 1152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13019:7:0", + "src": "11998:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33853,10 +32533,10 @@ "visibility": "internal" } ], - "src": "13018:9:0" + "src": "11997:9:0" }, - "scope": 1221, - "src": "12962:66:0", + "scope": 1173, + "src": "11941:66:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -33864,7 +32544,7 @@ { "body": null, "documentation": null, - "id": 1212, + "id": 1164, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -33872,16 +32552,16 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1208, + "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1205, + "id": 1157, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13049:10:0", + "scope": 1164, + "src": "12028:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33889,10 +32569,10 @@ "typeString": "address" }, "typeName": { - "id": 1204, + "id": 1156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13049:7:0", + "src": "12028:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33903,11 +32583,11 @@ }, { "constant": false, - "id": 1207, + "id": 1159, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13061:13:0", + "scope": 1164, + "src": "12040:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33915,10 +32595,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1158, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13061:7:0", + "src": "12040:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33928,20 +32608,20 @@ "visibility": "internal" } ], - "src": "13048:27:0" + "src": "12027:27:0" }, "payable": false, "returnParameters": { - "id": 1211, + "id": 1163, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1210, + "id": 1162, "name": "", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13092:4:0", + "scope": 1164, + "src": "12071:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33949,10 +32629,10 @@ "typeString": "bool" }, "typeName": { - "id": 1209, + "id": 1161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13092:4:0", + "src": "12071:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -33962,10 +32642,10 @@ "visibility": "internal" } ], - "src": "13091:6:0" + "src": "12070:6:0" }, - "scope": 1221, - "src": "13031:67:0", + "scope": 1173, + "src": "12010:67:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -33973,21 +32653,21 @@ { "anonymous": false, "documentation": null, - "id": 1220, + "id": 1172, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1219, + "id": 1171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1214, + "id": 1166, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13116:20:0", + "scope": 1172, + "src": "12095:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33995,10 +32675,10 @@ "typeString": "address" }, "typeName": { - "id": 1213, + "id": 1165, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13116:7:0", + "src": "12095:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34009,12 +32689,12 @@ }, { "constant": false, - "id": 1216, + "id": 1168, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13138:18:0", + "scope": 1172, + "src": "12117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34022,10 +32702,10 @@ "typeString": "address" }, "typeName": { - "id": 1215, + "id": 1167, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13138:7:0", + "src": "12117:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34036,12 +32716,12 @@ }, { "constant": false, - "id": 1218, + "id": 1170, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13158:13:0", + "scope": 1172, + "src": "12137:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34049,10 +32729,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1217, + "id": 1169, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13158:7:0", + "src": "12137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34062,13 +32742,13 @@ "visibility": "internal" } ], - "src": "13115:57:0" + "src": "12094:57:0" }, - "src": "13101:72:0" + "src": "12080:72:0" } ], - "scope": 1394, - "src": "12908:267:0" + "scope": 1346, + "src": "11887:267:0" }, { "baseContracts": [ @@ -34076,31 +32756,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1222, + "id": 1174, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1221, - "src": "13285:10:0", + "referencedDeclaration": 1173, + "src": "12264:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$1221", + "typeIdentifier": "t_contract$_ERC20Basic_$1173", "typeString": "contract ERC20Basic" } }, - "id": 1223, + "id": 1175, "nodeType": "InheritanceSpecifier", - "src": "13285:10:0" + "src": "12264:10:0" } ], "contractDependencies": [ - 1221 + 1173 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 1261, + "id": 1213, "linearizedBaseContracts": [ - 1261, - 1221 + 1213, + 1173 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -34108,7 +32788,7 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1184, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -34116,16 +32796,16 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1225, + "id": 1177, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13319:13:0", + "scope": 1184, + "src": "12298:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34133,10 +32813,10 @@ "typeString": "address" }, "typeName": { - "id": 1224, + "id": 1176, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13319:7:0", + "src": "12298:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34147,11 +32827,11 @@ }, { "constant": false, - "id": 1227, + "id": 1179, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13334:15:0", + "scope": 1184, + "src": "12313:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34159,10 +32839,10 @@ "typeString": "address" }, "typeName": { - "id": 1226, + "id": 1178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13334:7:0", + "src": "12313:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34172,20 +32852,20 @@ "visibility": "internal" } ], - "src": "13318:32:0" + "src": "12297:32:0" }, "payable": false, "returnParameters": { - "id": 1231, + "id": 1183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1182, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13376:7:0", + "scope": 1184, + "src": "12355:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34193,10 +32873,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1181, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13376:7:0", + "src": "12355:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34206,10 +32886,10 @@ "visibility": "internal" } ], - "src": "13375:9:0" + "src": "12354:9:0" }, - "scope": 1261, - "src": "13300:85:0", + "scope": 1213, + "src": "12279:85:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -34217,7 +32897,7 @@ { "body": null, "documentation": null, - "id": 1243, + "id": 1195, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -34225,16 +32905,16 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1239, + "id": 1191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1186, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13410:12:0", + "scope": 1195, + "src": "12389:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34242,10 +32922,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13410:7:0", + "src": "12389:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34256,11 +32936,11 @@ }, { "constant": false, - "id": 1236, + "id": 1188, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13424:10:0", + "scope": 1195, + "src": "12403:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34268,10 +32948,10 @@ "typeString": "address" }, "typeName": { - "id": 1235, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13424:7:0", + "src": "12403:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34282,11 +32962,11 @@ }, { "constant": false, - "id": 1238, + "id": 1190, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13436:13:0", + "scope": 1195, + "src": "12415:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34294,10 +32974,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1237, + "id": 1189, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13436:7:0", + "src": "12415:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34307,20 +32987,20 @@ "visibility": "internal" } ], - "src": "13409:41:0" + "src": "12388:41:0" }, "payable": false, "returnParameters": { - "id": 1242, + "id": 1194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1193, "name": "", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13467:4:0", + "scope": 1195, + "src": "12446:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34328,10 +33008,10 @@ "typeString": "bool" }, "typeName": { - "id": 1240, + "id": 1192, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13467:4:0", + "src": "12446:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34341,10 +33021,10 @@ "visibility": "internal" } ], - "src": "13466:6:0" + "src": "12445:6:0" }, - "scope": 1261, - "src": "13388:85:0", + "scope": 1213, + "src": "12367:85:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -34352,7 +33032,7 @@ { "body": null, "documentation": null, - "id": 1252, + "id": 1204, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -34360,16 +33040,16 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1248, + "id": 1200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1245, + "id": 1197, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13493:15:0", + "scope": 1204, + "src": "12472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34377,10 +33057,10 @@ "typeString": "address" }, "typeName": { - "id": 1244, + "id": 1196, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13493:7:0", + "src": "12472:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34391,11 +33071,11 @@ }, { "constant": false, - "id": 1247, + "id": 1199, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13510:13:0", + "scope": 1204, + "src": "12489:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34403,10 +33083,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1246, + "id": 1198, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13510:7:0", + "src": "12489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34416,20 +33096,20 @@ "visibility": "internal" } ], - "src": "13492:32:0" + "src": "12471:32:0" }, "payable": false, "returnParameters": { - "id": 1251, + "id": 1203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1202, "name": "", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13541:4:0", + "scope": 1204, + "src": "12520:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34437,10 +33117,10 @@ "typeString": "bool" }, "typeName": { - "id": 1249, + "id": 1201, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13541:4:0", + "src": "12520:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34450,10 +33130,10 @@ "visibility": "internal" } ], - "src": "13540:6:0" + "src": "12519:6:0" }, - "scope": 1261, - "src": "13476:71:0", + "scope": 1213, + "src": "12455:71:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -34461,21 +33141,21 @@ { "anonymous": false, "documentation": null, - "id": 1260, + "id": 1212, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1259, + "id": 1211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1254, + "id": 1206, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13565:21:0", + "scope": 1212, + "src": "12544:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34483,10 +33163,10 @@ "typeString": "address" }, "typeName": { - "id": 1253, + "id": 1205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13565:7:0", + "src": "12544:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34497,12 +33177,12 @@ }, { "constant": false, - "id": 1256, + "id": 1208, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13588:23:0", + "scope": 1212, + "src": "12567:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34510,10 +33190,10 @@ "typeString": "address" }, "typeName": { - "id": 1255, + "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13588:7:0", + "src": "12567:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34524,12 +33204,12 @@ }, { "constant": false, - "id": 1258, + "id": 1210, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13613:13:0", + "scope": 1212, + "src": "12592:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34537,10 +33217,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1257, + "id": 1209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13613:7:0", + "src": "12592:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34550,13 +33230,13 @@ "visibility": "internal" } ], - "src": "13564:63:0" + "src": "12543:63:0" }, - "src": "13550:78:0" + "src": "12529:78:0" } ], - "scope": 1394, - "src": "13267:363:0" + "scope": 1346, + "src": "12246:363:0" }, { "baseContracts": [], @@ -34564,31 +33244,31 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 1393, + "id": 1345, "linearizedBaseContracts": [ - 1393 + 1345 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1290, + "id": 1242, "nodeType": "Block", - "src": "13817:90:0", + "src": "12796:90:0", "statements": [ { "assignments": [ - 1271 + 1223 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1223, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13827:9:0", + "scope": 1243, + "src": "12806:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34596,10 +33276,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 1222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13827:7:0", + "src": "12806:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34609,26 +33289,26 @@ "visibility": "internal" } ], - "id": 1275, + "id": 1227, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1274, + "id": 1226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1272, + "id": 1224, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13839:1:0", + "referencedDeclaration": 1215, + "src": "12818:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34638,25 +33318,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1273, + "id": 1225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13843:1:0", + "referencedDeclaration": 1217, + "src": "12822:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13839:5:0", + "src": "12818:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13827:17:0" + "src": "12806:17:0" }, { "expression": { @@ -34668,7 +33348,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1285, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, @@ -34679,19 +33359,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1279, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1277, + "id": 1229, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13861:1:0", + "referencedDeclaration": 1215, + "src": "12840:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34702,14 +33382,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1278, + "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13866:1:0", + "src": "12845:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -34717,7 +33397,7 @@ }, "value": "0" }, - "src": "13861:6:0", + "src": "12840:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34731,7 +33411,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1284, + "id": 1236, "isConstant": false, "isLValue": false, "isPure": false, @@ -34742,19 +33422,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1282, + "id": 1234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1280, + "id": 1232, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13871:1:0", + "referencedDeclaration": 1223, + "src": "12850:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34764,18 +33444,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1281, + "id": 1233, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13875:1:0", + "referencedDeclaration": 1215, + "src": "12854:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:5:0", + "src": "12850:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34785,24 +33465,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1283, + "id": 1235, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13880:1:0", + "referencedDeclaration": 1217, + "src": "12859:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:10:0", + "src": "12850:10:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13861:20:0", + "src": "12840:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34816,18 +33496,18 @@ "typeString": "bool" } ], - "id": 1276, + "id": 1228, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "13854:6:0", + "referencedDeclaration": 1489, + "src": "12833:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, @@ -34835,39 +33515,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13854:28:0", + "src": "12833:28:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 1239, "nodeType": "ExpressionStatement", - "src": "13854:28:0" + "src": "12833:28:0" }, { "expression": { "argumentTypes": null, - "id": 1288, + "id": 1240, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13899:1:0", + "referencedDeclaration": 1223, + "src": "12878:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1269, - "id": 1289, + "functionReturnParameters": 1221, + "id": 1241, "nodeType": "Return", - "src": "13892:8:0" + "src": "12871:8:0" } ] }, "documentation": null, - "id": 1291, + "id": 1243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -34875,16 +33555,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 1266, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1263, + "id": 1215, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13759:9:0", + "scope": 1243, + "src": "12738:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34892,10 +33572,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1214, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13759:7:0", + "src": "12738:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34906,11 +33586,11 @@ }, { "constant": false, - "id": 1265, + "id": 1217, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13770:9:0", + "scope": 1243, + "src": "12749:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34918,10 +33598,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1264, + "id": 1216, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13770:7:0", + "src": "12749:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34931,20 +33611,20 @@ "visibility": "internal" } ], - "src": "13758:22:0" + "src": "12737:22:0" }, "payable": false, "returnParameters": { - "id": 1269, + "id": 1221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1268, + "id": 1220, "name": "", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13808:7:0", + "scope": 1243, + "src": "12787:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34952,10 +33632,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1267, + "id": 1219, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13808:7:0", + "src": "12787:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34965,32 +33645,32 @@ "visibility": "internal" } ], - "src": "13807:9:0" + "src": "12786:9:0" }, - "scope": 1393, - "src": "13746:161:0", + "scope": 1345, + "src": "12725:161:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1308, + "id": 1260, "nodeType": "Block", - "src": "13984:216:0", + "src": "12963:216:0", "statements": [ { "assignments": [ - 1301 + 1253 ], "declarations": [ { "constant": false, - "id": 1301, + "id": 1253, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "14072:9:0", + "scope": 1261, + "src": "13051:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34998,10 +33678,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1300, + "id": 1252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14072:7:0", + "src": "13051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35011,26 +33691,26 @@ "visibility": "internal" } ], - "id": 1305, + "id": 1257, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1304, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1302, + "id": 1254, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1293, - "src": "14084:1:0", + "referencedDeclaration": 1245, + "src": "13063:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35040,49 +33720,49 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1303, + "id": 1255, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1295, - "src": "14088:1:0", + "referencedDeclaration": 1247, + "src": "13067:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14084:5:0", + "src": "13063:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14072:17:0" + "src": "13051:17:0" }, { "expression": { "argumentTypes": null, - "id": 1306, + "id": 1258, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "14192:1:0", + "referencedDeclaration": 1253, + "src": "13171:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1299, - "id": 1307, + "functionReturnParameters": 1251, + "id": 1259, "nodeType": "Return", - "src": "14185:8:0" + "src": "13164:8:0" } ] }, "documentation": null, - "id": 1309, + "id": 1261, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35090,16 +33770,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 1296, + "id": 1248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1293, + "id": 1245, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13926:9:0", + "scope": 1261, + "src": "12905:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35107,10 +33787,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1292, + "id": 1244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13926:7:0", + "src": "12905:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35121,11 +33801,11 @@ }, { "constant": false, - "id": 1295, + "id": 1247, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13937:9:0", + "scope": 1261, + "src": "12916:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35133,10 +33813,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1294, + "id": 1246, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13937:7:0", + "src": "12916:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35146,20 +33826,20 @@ "visibility": "internal" } ], - "src": "13925:22:0" + "src": "12904:22:0" }, "payable": false, "returnParameters": { - "id": 1299, + "id": 1251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1250, "name": "", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13975:7:0", + "scope": 1261, + "src": "12954:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35167,10 +33847,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1297, + "id": 1249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13975:7:0", + "src": "12954:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35180,19 +33860,19 @@ "visibility": "internal" } ], - "src": "13974:9:0" + "src": "12953:9:0" }, - "scope": 1393, - "src": "13913:287:0", + "scope": 1345, + "src": "12892:287:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1328, + "id": 1280, "nodeType": "Block", - "src": "14277:53:0", + "src": "13256:53:0", "statements": [ { "expression": { @@ -35204,19 +33884,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1321, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1319, + "id": 1271, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14294:1:0", + "referencedDeclaration": 1265, + "src": "13273:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35226,18 +33906,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 1320, + "id": 1272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14299:1:0", + "referencedDeclaration": 1263, + "src": "13278:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14294:6:0", + "src": "13273:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35251,18 +33931,18 @@ "typeString": "bool" } ], - "id": 1318, + "id": 1270, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14287:6:0", + "referencedDeclaration": 1489, + "src": "13266:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1322, + "id": 1274, "isConstant": false, "isLValue": false, "isPure": false, @@ -35270,15 +33950,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14287:14:0", + "src": "13266:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1323, + "id": 1275, "nodeType": "ExpressionStatement", - "src": "14287:14:0" + "src": "13266:14:0" }, { "expression": { @@ -35287,19 +33967,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1326, + "id": 1278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1324, + "id": 1276, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14318:1:0", + "referencedDeclaration": 1263, + "src": "13297:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35309,32 +33989,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1325, + "id": 1277, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14322:1:0", + "referencedDeclaration": 1265, + "src": "13301:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14318:5:0", + "src": "13297:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1317, - "id": 1327, + "functionReturnParameters": 1269, + "id": 1279, "nodeType": "Return", - "src": "14311:12:0" + "src": "13290:12:0" } ] }, "documentation": null, - "id": 1329, + "id": 1281, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35342,16 +34022,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 1314, + "id": 1266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1311, + "id": 1263, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14219:9:0", + "scope": 1281, + "src": "13198:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35359,10 +34039,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1310, + "id": 1262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14219:7:0", + "src": "13198:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35373,11 +34053,11 @@ }, { "constant": false, - "id": 1313, + "id": 1265, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14230:9:0", + "scope": 1281, + "src": "13209:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35385,10 +34065,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1312, + "id": 1264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14230:7:0", + "src": "13209:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35398,20 +34078,20 @@ "visibility": "internal" } ], - "src": "14218:22:0" + "src": "13197:22:0" }, "payable": false, "returnParameters": { - "id": 1317, + "id": 1269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 1268, "name": "", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14268:7:0", + "scope": 1281, + "src": "13247:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35419,10 +34099,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1315, + "id": 1267, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14268:7:0", + "src": "13247:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35432,32 +34112,32 @@ "visibility": "internal" } ], - "src": "14267:9:0" + "src": "13246:9:0" }, - "scope": 1393, - "src": "14206:124:0", + "scope": 1345, + "src": "13185:124:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1352, + "id": 1304, "nodeType": "Block", - "src": "14407:76:0", + "src": "13386:76:0", "statements": [ { "assignments": [ - 1339 + 1291 ], "declarations": [ { "constant": false, - "id": 1339, + "id": 1291, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14417:9:0", + "scope": 1305, + "src": "13396:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35465,10 +34145,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1338, + "id": 1290, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14417:7:0", + "src": "13396:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35478,26 +34158,26 @@ "visibility": "internal" } ], - "id": 1343, + "id": 1295, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1342, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1340, + "id": 1292, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14429:1:0", + "referencedDeclaration": 1283, + "src": "13408:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35507,25 +34187,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1341, + "id": 1293, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "14433:1:0", + "referencedDeclaration": 1285, + "src": "13412:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14429:5:0", + "src": "13408:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14417:17:0" + "src": "13396:17:0" }, { "expression": { @@ -35537,19 +34217,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1347, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1345, + "id": 1297, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14451:1:0", + "referencedDeclaration": 1291, + "src": "13430:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35559,18 +34239,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1346, + "id": 1298, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14456:1:0", + "referencedDeclaration": 1283, + "src": "13435:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14451:6:0", + "src": "13430:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35584,18 +34264,18 @@ "typeString": "bool" } ], - "id": 1344, + "id": 1296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14444:6:0", + "referencedDeclaration": 1489, + "src": "13423:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1348, + "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, @@ -35603,39 +34283,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14444:14:0", + "src": "13423:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1349, + "id": 1301, "nodeType": "ExpressionStatement", - "src": "14444:14:0" + "src": "13423:14:0" }, { "expression": { "argumentTypes": null, - "id": 1350, + "id": 1302, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14475:1:0", + "referencedDeclaration": 1291, + "src": "13454:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1337, - "id": 1351, + "functionReturnParameters": 1289, + "id": 1303, "nodeType": "Return", - "src": "14468:8:0" + "src": "13447:8:0" } ] }, "documentation": null, - "id": 1353, + "id": 1305, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35643,16 +34323,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 1334, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1331, + "id": 1283, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14349:9:0", + "scope": 1305, + "src": "13328:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35660,10 +34340,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1330, + "id": 1282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14349:7:0", + "src": "13328:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35674,11 +34354,11 @@ }, { "constant": false, - "id": 1333, + "id": 1285, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14360:9:0", + "scope": 1305, + "src": "13339:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35686,10 +34366,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14360:7:0", + "src": "13339:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35699,20 +34379,20 @@ "visibility": "internal" } ], - "src": "14348:22:0" + "src": "13327:22:0" }, "payable": false, "returnParameters": { - "id": 1337, + "id": 1289, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1336, + "id": 1288, "name": "", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14398:7:0", + "scope": 1305, + "src": "13377:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35720,10 +34400,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1335, + "id": 1287, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14398:7:0", + "src": "13377:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35733,32 +34413,32 @@ "visibility": "internal" } ], - "src": "14397:9:0" + "src": "13376:9:0" }, - "scope": 1393, - "src": "14336:147:0", + "scope": 1345, + "src": "13315:147:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1391, + "id": 1343, "nodeType": "Block", - "src": "14768:257:0", + "src": "13747:257:0", "statements": [ { "assignments": [ - 1365 + 1317 ], "declarations": [ { "constant": false, - "id": 1365, + "id": 1317, "name": "_numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14826:18:0", + "scope": 1344, + "src": "13805:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35766,10 +34446,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1364, + "id": 1316, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14826:7:0", + "src": "13805:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35779,18 +34459,18 @@ "visibility": "internal" } ], - "id": 1375, + "id": 1327, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1367, + "id": 1319, "name": "numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1355, - "src": "14851:9:0", + "referencedDeclaration": 1307, + "src": "13830:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35802,7 +34482,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1373, + "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, @@ -35810,14 +34490,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1368, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14862:2:0", + "src": "13841:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -35836,19 +34516,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1371, + "id": 1323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1369, + "id": 1321, "name": "precision", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "14869:9:0", + "referencedDeclaration": 1311, + "src": "13848:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35859,14 +34539,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1370, + "id": 1322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14879:1:0", + "src": "13858:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -35874,27 +34554,27 @@ }, "value": "1" }, - "src": "14869:11:0", + "src": "13848:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1372, + "id": 1324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14868:13:0", + "src": "13847:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14862:19:0", + "src": "13841:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35912,18 +34592,18 @@ "typeString": "uint256" } ], - "id": 1366, + "id": 1318, "name": "mul", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "14847:3:0", + "referencedDeclaration": 1243, + "src": "13826:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1374, + "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, @@ -35931,27 +34611,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14847:35:0", + "src": "13826:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14826:56:0" + "src": "13805:56:0" }, { "assignments": [ - 1377 + 1329 ], "declarations": [ { "constant": false, - "id": 1377, + "id": 1329, "name": "_quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14931:17:0", + "scope": 1344, + "src": "13910:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35959,10 +34639,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1376, + "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14931:7:0", + "src": "13910:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35972,14 +34652,14 @@ "visibility": "internal" } ], - "id": 1387, + "id": 1339, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1386, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, @@ -35993,7 +34673,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1383, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": false, @@ -36003,12 +34683,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1379, + "id": 1331, "name": "_numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "14956:10:0", + "referencedDeclaration": 1317, + "src": "13935:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36016,12 +34696,12 @@ }, { "argumentTypes": null, - "id": 1380, + "id": 1332, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1357, - "src": "14968:11:0", + "referencedDeclaration": 1309, + "src": "13947:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36039,18 +34719,18 @@ "typeString": "uint256" } ], - "id": 1378, + "id": 1330, "name": "div", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "14952:3:0", + "referencedDeclaration": 1261, + "src": "13931:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1381, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -36058,7 +34738,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14952:28:0", + "src": "13931:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36069,14 +34749,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "35", - "id": 1382, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14983:1:0", + "src": "13962:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_5_by_1", @@ -36084,21 +34764,21 @@ }, "value": "5" }, - "src": "14952:32:0", + "src": "13931:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1384, + "id": 1336, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14951:34:0", + "src": "13930:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36109,14 +34789,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1385, + "id": 1337, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14988:2:0", + "src": "13967:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -36124,14 +34804,14 @@ }, "value": "10" }, - "src": "14951:39:0", + "src": "13930:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14931:59:0" + "src": "13910:59:0" }, { "expression": { @@ -36139,40 +34819,40 @@ "components": [ { "argumentTypes": null, - "id": 1388, + "id": 1340, "name": "_quotient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "15008:9:0", + "referencedDeclaration": 1329, + "src": "13987:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1389, + "id": 1341, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "15007:11:0", + "src": "13986:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1363, - "id": 1390, + "functionReturnParameters": 1315, + "id": 1342, "nodeType": "Return", - "src": "15000:18:0" + "src": "13979:18:0" } ] }, "documentation": null, - "id": 1392, + "id": 1344, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -36180,16 +34860,16 @@ "name": "percent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1360, + "id": 1312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1355, + "id": 1307, "name": "numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14665:17:0", + "scope": 1344, + "src": "13644:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36197,10 +34877,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1354, + "id": 1306, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14665:7:0", + "src": "13644:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36211,11 +34891,11 @@ }, { "constant": false, - "id": 1357, + "id": 1309, "name": "denominator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14684:19:0", + "scope": 1344, + "src": "13663:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36223,10 +34903,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1356, + "id": 1308, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14684:7:0", + "src": "13663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36237,11 +34917,11 @@ }, { "constant": false, - "id": 1359, + "id": 1311, "name": "precision", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14705:17:0", + "scope": 1344, + "src": "13684:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36249,10 +34929,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1358, + "id": 1310, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14705:7:0", + "src": "13684:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36262,20 +34942,20 @@ "visibility": "internal" } ], - "src": "14664:59:0" + "src": "13643:59:0" }, "payable": false, "returnParameters": { - "id": 1363, + "id": 1315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1362, + "id": 1314, "name": "quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14750:16:0", + "scope": 1344, + "src": "13729:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36283,10 +34963,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1361, + "id": 1313, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14750:7:0", + "src": "13729:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36296,20 +34976,20 @@ "visibility": "internal" } ], - "src": "14749:18:0" + "src": "13728:18:0" }, - "scope": 1393, - "src": "14648:377:0", + "scope": 1345, + "src": "13627:377:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1394, - "src": "13723:1304:0" + "scope": 1346, + "src": "12702:1304:0" } ], - "src": "0:15029:0" + "src": "0:14008:0" }, "compiler": { "name": "solc", @@ -36317,7 +34997,7 @@ }, "networks": {}, "schemaVersion": "3.3.2", - "updatedAt": "2021-05-01T11:15:37.970Z", + "updatedAt": "2021-05-02T12:39:45.330Z", "devdoc": { "methods": {}, "title": "ERC20Basic" diff --git a/build/contracts/IDoneth.json b/build/contracts/IDoneth.json new file mode 100644 index 00000000..3469eb3b --- /dev/null +++ b/build/contracts/IDoneth.json @@ -0,0 +1,1344 @@ +{ + "contractName": "IDoneth", + "abi": [ + { + "constant": false, + "inputs": [], + "name": "init", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + } + ], + "metadata": "", + "bytecode": "0x", + "deployedBytecode": "0x", + "sourceMap": "", + "deployedSourceMap": "", + "source": "/***\n* Shoutouts:\n*\n* Bytecode origin https://www.reddit.com/r/ethereum/comments/6ic49q/any_assembly_programmers_willing_to_write_a/dj5ceuw/\n* Modified version of Vitalik's https://www.reddit.com/r/ethereum/comments/6c1jui/delegatecall_forwarders_how_to_save_5098_on/\n* Credits to Jorge Izquierdo (@izqui) for coming up with this design here: https://gist.github.com/izqui/7f904443e6d19c1ab52ec7f5ad46b3a8\n* Credits to Stefan George (@Georgi87) for inspiration for many of the improvements from Gnosis Safe: https://github.com/gnosis/gnosis-safe-contracts\n*\n* This version has many improvements over the original @izqui's library like using REVERT instead of THROWing on failed calls.\n* It also implements the awesome design pattern for initializing code as seen in Gnosis Safe Factory: https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/ProxyFactory.sol\n* but unlike this last one it doesn't require that you waste storage on both the proxy and the proxied contracts (v. https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/Proxy.sol#L8 & https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol#L14)\n*\n*\n* v0.0.2\n* The proxy is now only 60 bytes long in total. Constructor included.\n* No functionalities were added. The change was just to make the proxy leaner.\n*\n* v0.0.3\n* Thanks @dacarley for noticing the incorrect check for the subsequent call to the proxy. 🙌\n* Note: I'm creating a new version of this that doesn't need that one call.\n* Will add tests and put this in its own repository soon™.\n*\n* v0.0.4\n* All the merit in this fix + update of the factory is @dacarley 's. 🙌\n* Thank you! 😄\n*\n* Potential updates can be found at https://gist.github.com/GNSPS/ba7b88565c947cfd781d44cf469c2ddb\n*\n***/\n\nimport \"./Proxy.sol\";\n\npragma solidity ^0.4.19;\n\n\ninterface IDoneth {\n function init() public;\n}\n\n/* solhint-disable no-inline-assembly, indent, state-visibility, avoid-low-level-calls */\n\ncontract ProxyFactory {\n\n address public target;\n function ProxyFactory() public {}\n\n event ProxyDeployed(address proxyAddress, address targetAddress);\n\n function createProxy(address _target)\n public\n payable\n returns (address proxyContract)\n {\n Proxy prox = new Proxy(_target);\n IDoneth(address(prox)).init();\n ProxyDeployed(address(prox), _target);\n }\n}", + "sourcePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol", + "ast": { + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol", + "exportedSymbols": { + "IDoneth": [ + 1442 + ], + "ProxyFactory": [ + 1485 + ] + }, + "id": 1486, + "nodeType": "SourceUnit", + "nodes": [ + { + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol", + "file": "./Proxy.sol", + "id": 1437, + "nodeType": "ImportDirective", + "scope": 1486, + "sourceUnit": 1436, + "src": "1789:21:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1438, + "literals": [ + "solidity", + "^", + "0.4", + ".19" + ], + "nodeType": "PragmaDirective", + "src": "1812:24:4" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "interface", + "documentation": null, + "fullyImplemented": false, + "id": 1442, + "linearizedBaseContracts": [ + 1442 + ], + "name": "IDoneth", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 1441, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "init", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1439, + "nodeType": "ParameterList", + "parameters": [], + "src": "1874:2:4" + }, + "payable": false, + "returnParameters": { + "id": 1440, + "nodeType": "ParameterList", + "parameters": [], + "src": "1883:0:4" + }, + "scope": 1442, + "src": "1861:23:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1486, + "src": "1839:47:4" + }, + { + "baseContracts": [], + "contractDependencies": [ + 1435 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 1485, + "linearizedBaseContracts": [ + 1485 + ], + "name": "ProxyFactory", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1444, + "name": "target", + "nodeType": "VariableDeclaration", + "scope": 1485, + "src": "2008:21:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1443, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2008:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 1447, + "nodeType": "Block", + "src": "2066:2:4", + "statements": [] + }, + "documentation": null, + "id": 1448, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "ProxyFactory", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1445, + "nodeType": "ParameterList", + "parameters": [], + "src": "2056:2:4" + }, + "payable": false, + "returnParameters": { + "id": 1446, + "nodeType": "ParameterList", + "parameters": [], + "src": "2066:0:4" + }, + "scope": 1485, + "src": "2035:33:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 1454, + "name": "ProxyDeployed", + "nodeType": "EventDefinition", + "parameters": { + "id": 1453, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1450, + "indexed": false, + "name": "proxyAddress", + "nodeType": "VariableDeclaration", + "scope": 1454, + "src": "2094:20:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1449, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2094:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1452, + "indexed": false, + "name": "targetAddress", + "nodeType": "VariableDeclaration", + "scope": 1454, + "src": "2116:21:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1451, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2116:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2093:45:4" + }, + "src": "2074:65:4" + }, + { + "body": { + "id": 1483, + "nodeType": "Block", + "src": "2258:134:4", + "statements": [ + { + "assignments": [ + 1462 + ], + "declarations": [ + { + "constant": false, + "id": 1462, + "name": "prox", + "nodeType": "VariableDeclaration", + "scope": 1484, + "src": "2268:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + }, + "typeName": { + "contractScope": null, + "id": 1461, + "name": "Proxy", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1435, + "src": "2268:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1467, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1465, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "2291:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2281:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_creation_nonpayable$_t_address_$returns$_t_contract$_Proxy_$1435_$", + "typeString": "function (address) returns (contract Proxy)" + }, + "typeName": { + "contractScope": null, + "id": 1463, + "name": "Proxy", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1435, + "src": "2285:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2281:18:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2268:31:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1470, + "name": "prox", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "2325:4:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + ], + "id": 1469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2317:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2317:13:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1468, + "name": "IDoneth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1442, + "src": "2309:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IDoneth_$1442_$", + "typeString": "type(contract IDoneth)" + } + }, + "id": 1472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2309:22:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IDoneth_$1442", + "typeString": "contract IDoneth" + } + }, + "id": 1473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "init", + "nodeType": "MemberAccess", + "referencedDeclaration": 1441, + "src": "2309:27:4", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 1474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2309:29:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1475, + "nodeType": "ExpressionStatement", + "src": "2309:29:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1478, + "name": "prox", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "2370:4:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + ], + "id": 1477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2362:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2362:13:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1480, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "2377:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1476, + "name": "ProxyDeployed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1454, + "src": "2348:13:4", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 1481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2348:37:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1482, + "nodeType": "ExpressionStatement", + "src": "2348:37:4" + } + ] + }, + "documentation": null, + "id": 1484, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "createProxy", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1457, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1456, + "name": "_target", + "nodeType": "VariableDeclaration", + "scope": 1484, + "src": "2166:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1455, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2166:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2165:17:4" + }, + "payable": true, + "returnParameters": { + "id": 1460, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1459, + "name": "proxyContract", + "nodeType": "VariableDeclaration", + "scope": 1484, + "src": "2231:21:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1458, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2231:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2230:23:4" + }, + "scope": 1485, + "src": "2145:247:4", + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1486, + "src": "1979:415:4" + } + ], + "src": "1789:605:4" + }, + "legacyAST": { + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol", + "exportedSymbols": { + "IDoneth": [ + 1442 + ], + "ProxyFactory": [ + 1485 + ] + }, + "id": 1486, + "nodeType": "SourceUnit", + "nodes": [ + { + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol", + "file": "./Proxy.sol", + "id": 1437, + "nodeType": "ImportDirective", + "scope": 1486, + "sourceUnit": 1436, + "src": "1789:21:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1438, + "literals": [ + "solidity", + "^", + "0.4", + ".19" + ], + "nodeType": "PragmaDirective", + "src": "1812:24:4" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "interface", + "documentation": null, + "fullyImplemented": false, + "id": 1442, + "linearizedBaseContracts": [ + 1442 + ], + "name": "IDoneth", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 1441, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "init", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1439, + "nodeType": "ParameterList", + "parameters": [], + "src": "1874:2:4" + }, + "payable": false, + "returnParameters": { + "id": 1440, + "nodeType": "ParameterList", + "parameters": [], + "src": "1883:0:4" + }, + "scope": 1442, + "src": "1861:23:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1486, + "src": "1839:47:4" + }, + { + "baseContracts": [], + "contractDependencies": [ + 1435 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 1485, + "linearizedBaseContracts": [ + 1485 + ], + "name": "ProxyFactory", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1444, + "name": "target", + "nodeType": "VariableDeclaration", + "scope": 1485, + "src": "2008:21:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1443, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2008:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 1447, + "nodeType": "Block", + "src": "2066:2:4", + "statements": [] + }, + "documentation": null, + "id": 1448, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "ProxyFactory", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1445, + "nodeType": "ParameterList", + "parameters": [], + "src": "2056:2:4" + }, + "payable": false, + "returnParameters": { + "id": 1446, + "nodeType": "ParameterList", + "parameters": [], + "src": "2066:0:4" + }, + "scope": 1485, + "src": "2035:33:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "anonymous": false, + "documentation": null, + "id": 1454, + "name": "ProxyDeployed", + "nodeType": "EventDefinition", + "parameters": { + "id": 1453, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1450, + "indexed": false, + "name": "proxyAddress", + "nodeType": "VariableDeclaration", + "scope": 1454, + "src": "2094:20:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1449, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2094:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + }, + { + "constant": false, + "id": 1452, + "indexed": false, + "name": "targetAddress", + "nodeType": "VariableDeclaration", + "scope": 1454, + "src": "2116:21:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1451, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2116:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2093:45:4" + }, + "src": "2074:65:4" + }, + { + "body": { + "id": 1483, + "nodeType": "Block", + "src": "2258:134:4", + "statements": [ + { + "assignments": [ + 1462 + ], + "declarations": [ + { + "constant": false, + "id": 1462, + "name": "prox", + "nodeType": "VariableDeclaration", + "scope": 1484, + "src": "2268:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + }, + "typeName": { + "contractScope": null, + "id": 1461, + "name": "Proxy", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1435, + "src": "2268:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1467, + "initialValue": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1465, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "2291:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2281:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_creation_nonpayable$_t_address_$returns$_t_contract$_Proxy_$1435_$", + "typeString": "function (address) returns (contract Proxy)" + }, + "typeName": { + "contractScope": null, + "id": 1463, + "name": "Proxy", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1435, + "src": "2285:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + }, + "id": 1466, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2281:18:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2268:31:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1470, + "name": "prox", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "2325:4:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + ], + "id": 1469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2317:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2317:13:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1468, + "name": "IDoneth", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1442, + "src": "2309:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_contract$_IDoneth_$1442_$", + "typeString": "type(contract IDoneth)" + } + }, + "id": 1472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2309:22:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_IDoneth_$1442", + "typeString": "contract IDoneth" + } + }, + "id": 1473, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "init", + "nodeType": "MemberAccess", + "referencedDeclaration": 1441, + "src": "2309:27:4", + "typeDescriptions": { + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" + } + }, + "id": 1474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2309:29:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1475, + "nodeType": "ExpressionStatement", + "src": "2309:29:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1478, + "name": "prox", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "2370:4:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + ], + "id": 1477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2362:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2362:13:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "id": 1480, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "2377:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + }, + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1476, + "name": "ProxyDeployed", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1454, + "src": "2348:13:4", + "typeDescriptions": { + "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", + "typeString": "function (address,address)" + } + }, + "id": 1481, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2348:37:4", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1482, + "nodeType": "ExpressionStatement", + "src": "2348:37:4" + } + ] + }, + "documentation": null, + "id": 1484, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "createProxy", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1457, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1456, + "name": "_target", + "nodeType": "VariableDeclaration", + "scope": 1484, + "src": "2166:15:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1455, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2166:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2165:17:4" + }, + "payable": true, + "returnParameters": { + "id": 1460, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1459, + "name": "proxyContract", + "nodeType": "VariableDeclaration", + "scope": 1484, + "src": "2231:21:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1458, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2231:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "2230:23:4" + }, + "scope": 1485, + "src": "2145:247:4", + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1486, + "src": "1979:415:4" + } + ], + "src": "1789:605:4" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.3.2", + "updatedAt": "2021-05-02T12:39:45.352Z", + "devdoc": { + "methods": {} + }, + "userdoc": { + "methods": {} + } +} \ No newline at end of file diff --git a/build/contracts/Migrations.json b/build/contracts/Migrations.json index b2856e4c..afa4d6ff 100644 --- a/build/contracts/Migrations.json +++ b/build/contracts/Migrations.json @@ -1384,7 +1384,7 @@ } }, "schemaVersion": "3.3.2", - "updatedAt": "2021-05-01T11:16:10.932Z", + "updatedAt": "2021-05-02T12:42:44.239Z", "networkType": "ethereum", "devdoc": { "methods": {} diff --git a/build/contracts/Proxy.json b/build/contracts/Proxy.json new file mode 100644 index 00000000..89331bcf --- /dev/null +++ b/build/contracts/Proxy.json @@ -0,0 +1,872 @@ +{ + "contractName": "Proxy", + "abi": [ + { + "constant": true, + "inputs": [], + "name": "implementation", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "inputs": [ + { + "name": "_implementation", + "type": "address" + } + ], + "payable": false, + "stateMutability": "nonpayable", + "type": "constructor" + }, + { + "payable": true, + "stateMutability": "payable", + "type": "fallback" + } + ], + "metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[],\"name\":\"implementation\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"name\":\"_implementation\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"fallback\"}],\"devdoc\":{\"methods\":{},\"title\":\"Proxy\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol\":\"Proxy\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol\":{\"keccak256\":\"0x859cc04899b494b309ad099984dc51901bdf4483835a4ac1748d513024034af5\",\"urls\":[\"bzzr://8b31e9cc14ed2235817134d6f953316158bbc60ed429cd566f02be99174438d2\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b506040516020806101f583398101806040528101908080519060200190929190505050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610172806100836000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680635c60da1b146100ca575b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156100a357600080fd5b60405136600082376000803683855af43d806000843e81600081146100c6578184f35b8184fd5b3480156100d657600080fd5b506100df610121565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582076d27f6725af327935f0de0f240ab38bc5ee9ba1a557fbefe47582d2e0d30dbf0029", + "deployedBytecode": "0x608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680635c60da1b146100ca575b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156100a357600080fd5b60405136600082376000803683855af43d806000843e81600081146100c6578184f35b8184fd5b3480156100d657600080fd5b506100df610121565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582076d27f6725af327935f0de0f240ab38bc5ee9ba1a557fbefe47582d2e0d30dbf0029", + "sourceMap": "130:735:3:-;;;182:80;8:9:-1;5:2;;;30:1;27;20:12;5:2;182:80:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;242:15;225:14;;:32;;;;;;;;;;;;;;;;;;182:80;130:735;;;;;;", + "deployedSourceMap": "130:735:3:-;;;;;;;;;;;;;;;;;;;;;472:13;488:14;;;;;;;;;;;472:30;;533:1;516:19;;:5;:19;;;;508:28;;;;;;;;577:4;571:11;610:12;607:1;602:3;589:34;691:1;688;674:12;669:3;662:5;657:3;644:49;712:14;756:4;753:1;748:3;733:28;776:6;794:1;789:28;;;;846:4;841:3;834:17;789:28;810:4;805:3;798:17;149:29;;8:9:-1;5:2;;;30:1;27;20:12;5:2;149:29:3;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o", + "source": "pragma solidity ^0.4.18;\n\n/**\n * @title Proxy\n * @dev Gives the possibility to delegate any call to a foreign implementation.\n */\ncontract Proxy {\n address public implementation;\n constructor(address _implementation) {\n implementation = _implementation;\n }\n\n /**\n * @dev Fallback function allowing to perform a delegatecall to the given implementation.\n * This function will return whatever the implementation call returns\n */\n function () payable public {\n address _impl = implementation;\n require(_impl != address(0));\n\n assembly {\n let ptr := mload(0x40)\n calldatacopy(ptr, 0, calldatasize)\n let result := delegatecall(gas, _impl, ptr, calldatasize, 0, 0)\n let size := returndatasize\n returndatacopy(ptr, 0, size)\n\n switch result\n case 0 { revert(ptr, size) }\n default { return(ptr, size) }\n }\n }\n}", + "sourcePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol", + "ast": { + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol", + "exportedSymbols": { + "Proxy": [ + 1441 + ] + }, + "id": 1442, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1411, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:3" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title Proxy\n@dev Gives the possibility to delegate any call to a foreign implementation.", + "fullyImplemented": true, + "id": 1441, + "linearizedBaseContracts": [ + 1441 + ], + "name": "Proxy", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1413, + "name": "implementation", + "nodeType": "VariableDeclaration", + "scope": 1441, + "src": "149:29:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1412, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "149:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 1422, + "nodeType": "Block", + "src": "219:43:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1418, + "name": "implementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1413, + "src": "225:14:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1419, + "name": "_implementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1415, + "src": "242:15:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "225:32:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1421, + "nodeType": "ExpressionStatement", + "src": "225:32:3" + } + ] + }, + "documentation": null, + "id": 1423, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1416, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1415, + "name": "_implementation", + "nodeType": "VariableDeclaration", + "scope": 1423, + "src": "194:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1414, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "194:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "193:25:3" + }, + "payable": false, + "returnParameters": { + "id": 1417, + "nodeType": "ParameterList", + "parameters": [], + "src": "219:0:3" + }, + "scope": 1441, + "src": "182:80:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1439, + "nodeType": "Block", + "src": "466:397:3", + "statements": [ + { + "assignments": [ + 1427 + ], + "declarations": [ + { + "constant": false, + "id": 1427, + "name": "_impl", + "nodeType": "VariableDeclaration", + "scope": 1440, + "src": "472:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1426, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "472:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1429, + "initialValue": { + "argumentTypes": null, + "id": 1428, + "name": "implementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1413, + "src": "488:14:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "472:30:3" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 1431, + "name": "_impl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "516:5:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 1433, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "533:1:3", + "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": 1432, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "525:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1434, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "525:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "516:19:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1430, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1507, + 1508 + ], + "referencedDeclaration": 1507, + "src": "508:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "508:28:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1437, + "nodeType": "ExpressionStatement", + "src": "508:28:3" + }, + { + "externalReferences": [ + { + "_impl": { + "declaration": 1427, + "isOffset": false, + "isSlot": false, + "src": "662:5:3", + "valueSize": 1 + } + } + ], + "id": 1438, + "nodeType": "InlineAssembly", + "operations": "{\n let ptr := mload(0x40)\n calldatacopy(ptr, 0, calldatasize())\n let result := delegatecall(gas(), _impl, ptr, calldatasize(), 0, 0)\n let size := returndatasize()\n returndatacopy(ptr, 0, size)\n switch result\n case 0 {\n revert(ptr, size)\n }\n default {\n return(ptr, size)\n }\n}", + "src": "543:320:3" + } + ] + }, + "documentation": "@dev Fallback function allowing to perform a delegatecall to the given implementation.\nThis function will return whatever the implementation call returns", + "id": 1440, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1424, + "nodeType": "ParameterList", + "parameters": [], + "src": "448:2:3" + }, + "payable": true, + "returnParameters": { + "id": 1425, + "nodeType": "ParameterList", + "parameters": [], + "src": "466:0:3" + }, + "scope": 1441, + "src": "439:424:3", + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1442, + "src": "130:735:3" + } + ], + "src": "0:865:3" + }, + "legacyAST": { + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol", + "exportedSymbols": { + "Proxy": [ + 1441 + ] + }, + "id": 1442, + "nodeType": "SourceUnit", + "nodes": [ + { + "id": 1411, + "literals": [ + "solidity", + "^", + "0.4", + ".18" + ], + "nodeType": "PragmaDirective", + "src": "0:24:3" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "contract", + "documentation": "@title Proxy\n@dev Gives the possibility to delegate any call to a foreign implementation.", + "fullyImplemented": true, + "id": 1441, + "linearizedBaseContracts": [ + 1441 + ], + "name": "Proxy", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1413, + "name": "implementation", + "nodeType": "VariableDeclaration", + "scope": 1441, + "src": "149:29:3", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1412, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "149:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "body": { + "id": 1422, + "nodeType": "Block", + "src": "219:43:3", + "statements": [ + { + "expression": { + "argumentTypes": null, + "id": 1420, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftHandSide": { + "argumentTypes": null, + "id": 1418, + "name": "implementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1413, + "src": "225:14:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { + "argumentTypes": null, + "id": 1419, + "name": "_implementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1415, + "src": "242:15:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "225:32:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "id": 1421, + "nodeType": "ExpressionStatement", + "src": "225:32:3" + } + ] + }, + "documentation": null, + "id": 1423, + "implemented": true, + "isConstructor": true, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1416, + "nodeType": "ParameterList", + "parameters": [ + { + "constant": false, + "id": 1415, + "name": "_implementation", + "nodeType": "VariableDeclaration", + "scope": 1423, + "src": "194:23:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1414, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "194:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "src": "193:25:3" + }, + "payable": false, + "returnParameters": { + "id": 1417, + "nodeType": "ParameterList", + "parameters": [], + "src": "219:0:3" + }, + "scope": 1441, + "src": "182:80:3", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + }, + { + "body": { + "id": 1439, + "nodeType": "Block", + "src": "466:397:3", + "statements": [ + { + "assignments": [ + 1427 + ], + "declarations": [ + { + "constant": false, + "id": 1427, + "name": "_impl", + "nodeType": "VariableDeclaration", + "scope": 1440, + "src": "472:13:3", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1426, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "472:7:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1429, + "initialValue": { + "argumentTypes": null, + "id": 1428, + "name": "implementation", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1413, + "src": "488:14:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "472:30:3" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "commonType": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "id": 1435, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "leftExpression": { + "argumentTypes": null, + "id": 1431, + "name": "_impl", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1427, + "src": "516:5:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "nodeType": "BinaryOperation", + "operator": "!=", + "rightExpression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "hexValue": "30", + "id": 1433, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "number", + "lValueRequested": false, + "nodeType": "Literal", + "src": "533:1:3", + "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": 1432, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "525:7:3", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1434, + "isConstant": false, + "isLValue": false, + "isPure": true, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "525:10:3", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "src": "516:19:3", + "typeDescriptions": { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_bool", + "typeString": "bool" + } + ], + "id": 1430, + "name": "require", + "nodeType": "Identifier", + "overloadedDeclarations": [ + 1507, + 1508 + ], + "referencedDeclaration": 1507, + "src": "508:7:3", + "typeDescriptions": { + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" + } + }, + "id": 1436, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "508:28:3", + "typeDescriptions": { + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" + } + }, + "id": 1437, + "nodeType": "ExpressionStatement", + "src": "508:28:3" + }, + { + "externalReferences": [ + { + "_impl": { + "declaration": 1427, + "isOffset": false, + "isSlot": false, + "src": "662:5:3", + "valueSize": 1 + } + } + ], + "id": 1438, + "nodeType": "InlineAssembly", + "operations": "{\n let ptr := mload(0x40)\n calldatacopy(ptr, 0, calldatasize())\n let result := delegatecall(gas(), _impl, ptr, calldatasize(), 0, 0)\n let size := returndatasize()\n returndatacopy(ptr, 0, size)\n switch result\n case 0 {\n revert(ptr, size)\n }\n default {\n return(ptr, size)\n }\n}", + "src": "543:320:3" + } + ] + }, + "documentation": "@dev Fallback function allowing to perform a delegatecall to the given implementation.\nThis function will return whatever the implementation call returns", + "id": 1440, + "implemented": true, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1424, + "nodeType": "ParameterList", + "parameters": [], + "src": "448:2:3" + }, + "payable": true, + "returnParameters": { + "id": 1425, + "nodeType": "ParameterList", + "parameters": [], + "src": "466:0:3" + }, + "scope": 1441, + "src": "439:424:3", + "stateMutability": "payable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1442, + "src": "130:735:3" + } + ], + "src": "0:865:3" + }, + "compiler": { + "name": "solc", + "version": "0.4.24+commit.e67f0147.Emscripten.clang" + }, + "networks": {}, + "schemaVersion": "3.3.2", + "updatedAt": "2021-05-02T10:46:23.957Z", + "devdoc": { + "methods": {}, + "title": "Proxy" + }, + "userdoc": { + "methods": {} + } +} \ No newline at end of file diff --git a/build/contracts/ProxyFactory.json b/build/contracts/ProxyFactory.json index 2f79470c..16c45bed 100644 --- a/build/contracts/ProxyFactory.json +++ b/build/contracts/ProxyFactory.json @@ -1,6 +1,20 @@ { "contractName": "ProxyFactory", "abi": [ + { + "constant": true, + "inputs": [], + "name": "target", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, { "inputs": [], "payable": false, @@ -30,10 +44,6 @@ { "name": "_target", "type": "address" - }, - { - "name": "_data", - "type": "bytes" } ], "name": "createProxy", @@ -48,25 +58,39 @@ "type": "function" } ], - "metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[{\"name\":\"_target\",\"type\":\"address\"},{\"name\":\"_data\",\"type\":\"bytes\"}],\"name\":\"createProxy\",\"outputs\":[{\"name\":\"proxyContract\",\"type\":\"address\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"proxyAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"targetAddress\",\"type\":\"address\"}],\"name\":\"ProxyDeployed\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol\":\"ProxyFactory\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol\":{\"keccak256\":\"0x2a2c682f319e95748639cac0262c5f33c8ce89b193b60cdaaf8a88e17332e125\",\"urls\":[\"bzzr://ac7004e872d3451d71832128adbee2dca62c44a9bafdb954d7822e95937cd7ac\"]}},\"version\":1}", - "bytecode": "0x608060405234801561001057600080fd5b50610266806100206000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806361b69abd14610046575b600080fd5b6100c0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610102565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600061010e83836101ad565b90507f3d2489efb661e8b1c3679865db649ca1de61d76a71184a1234de2e55786a6aad8184604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a192915050565b600060405183600b82015276603160008181600b9039f360008080808036809280377360098203527f5af43d828181803e808314602f57f35bfd000000000000000000000000000000602b820152603c816000f09150813b151561021057600080fd5b82518015151561023257600080826020870134875af1151561023157600080fd5b5b5050929150505600a165627a7a723058201e34797d8c6110fc28eff491e24e8a9a446e4fa64fdcca80881321658372c2450029", - "deployedBytecode": "0x608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806361b69abd14610046575b600080fd5b6100c0600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509192919290505050610102565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b600061010e83836101ad565b90507f3d2489efb661e8b1c3679865db649ca1de61d76a71184a1234de2e55786a6aad8184604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a192915050565b600060405183600b82015276603160008181600b9039f360008080808036809280377360098203527f5af43d828181803e808314602f57f35bfd000000000000000000000000000000602b820152603c816000f09150813b151561021057600080fd5b82518015151561023257600080826020870134875af1151561023157600080fd5b5b5050929150505600a165627a7a723058201e34797d8c6110fc28eff491e24e8a9a446e4fa64fdcca80881321658372c2450029", - "sourceMap": "1907:1814:2:-;;;1966:38;8:9:-1;5:2;;;30:1;27;20:12;5:2;1966:38:2;1907:1814;;;;;;", - "deployedSourceMap": "1907:1814:2:-;;;;;;;;;;;;;;;;;;;;;;;;2081:309;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2180:21;2304:31;2320:7;2329:5;2304:15;:31::i;:::-;2288:47;;2346:37;2360:13;2375:7;2346:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2081:309;;;;:::o;2396:1323::-;2485:21;2571:4;2565:11;2681:7;2674:4;2660:12;2656:23;2649:40;2849:66;2842:4;2828:12;2824:23;2817:99;3059:66;3052:4;3038:12;3034:23;3027:99;3227:2;3213:12;3210:1;3203:27;3186:44;;3290:13;3278:26;3271:34;3268:2;;;3334:1;3331;3324:12;3268:2;3487:5;3481:12;3523:10;3516:18;3509:26;3506:2;;;3633:1;3630;3618:10;3611:4;3604:5;3600:16;3589:9;3574:13;3569:3;3564:71;3557:79;3554:2;;;3669:1;3666;3659:12;3554:2;3506;2531:1182;;;;;;:::o", - "source": "/***\n* Shoutouts:\n*\n* Bytecode origin https://www.reddit.com/r/ethereum/comments/6ic49q/any_assembly_programmers_willing_to_write_a/dj5ceuw/\n* Modified version of Vitalik's https://www.reddit.com/r/ethereum/comments/6c1jui/delegatecall_forwarders_how_to_save_5098_on/\n* Credits to Jorge Izquierdo (@izqui) for coming up with this design here: https://gist.github.com/izqui/7f904443e6d19c1ab52ec7f5ad46b3a8\n* Credits to Stefan George (@Georgi87) for inspiration for many of the improvements from Gnosis Safe: https://github.com/gnosis/gnosis-safe-contracts\n*\n* This version has many improvements over the original @izqui's library like using REVERT instead of THROWing on failed calls.\n* It also implements the awesome design pattern for initializing code as seen in Gnosis Safe Factory: https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/ProxyFactory.sol\n* but unlike this last one it doesn't require that you waste storage on both the proxy and the proxied contracts (v. https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/Proxy.sol#L8 & https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol#L14)\n*\n*\n* v0.0.2\n* The proxy is now only 60 bytes long in total. Constructor included.\n* No functionalities were added. The change was just to make the proxy leaner.\n*\n* v0.0.3\n* Thanks @dacarley for noticing the incorrect check for the subsequent call to the proxy. 🙌\n* Note: I'm creating a new version of this that doesn't need that one call.\n* Will add tests and put this in its own repository soon™.\n*\n* v0.0.4\n* All the merit in this fix + update of the factory is @dacarley 's. 🙌\n* Thank you! 😄\n*\n* Potential updates can be found at https://gist.github.com/GNSPS/ba7b88565c947cfd781d44cf469c2ddb\n*\n***/\n\npragma solidity ^0.4.19;\n\n\n/* solhint-disable no-inline-assembly, indent, state-visibility, avoid-low-level-calls */\n\ncontract ProxyFactory {\n // address public target;\n\n function ProxyFactory() public {\n }\n\n event ProxyDeployed(address proxyAddress, address targetAddress);\n\n function createProxy(address _target, bytes _data)\n public\n payable\n returns (address proxyContract)\n {\n // address _target = ControllerPointer(target).getERC20Main();\n proxyContract = createProxyImpl(_target, _data);\n\n ProxyDeployed(proxyContract, _target);\n }\n\n function createProxyImpl(address _target, bytes _data)\n internal\n returns (address proxyContract)\n {\n assembly {\n let contractCode := mload(0x40) // Find empty storage location using \"free memory pointer\"\n\n mstore(add(contractCode, 0x0b), _target) // Add target address, with a 11 bytes [i.e. 23 - (32 - 20)] offset to later accomodate first part of the bytecode\n mstore(sub(contractCode, 0x09), 0x000000000000000000603160008181600b9039f3600080808080368092803773) // First part of the bytecode, shifted left by 9 bytes, overwrites left padding of target address\n mstore(add(contractCode, 0x2b), 0x5af43d828181803e808314602f57f35bfd000000000000000000000000000000) // Final part of bytecode, offset by 43 bytes\n\n proxyContract := create(0, contractCode, 60) // total length 60 bytes\n if iszero(extcodesize(proxyContract)) {\n revert(0, 0)\n }\n\n // check if the _data.length > 0 and if it is forward it to the newly created contract\n let dataLength := mload(_data)\n if iszero(iszero(dataLength)) {\n if iszero(call(gas, proxyContract, callvalue, add(_data, 0x20), dataLength, 0, 0)) {\n revert(0, 0)\n }\n }\n }\n }\n}", + "metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":false,\"inputs\":[{\"name\":\"_target\",\"type\":\"address\"}],\"name\":\"createProxy\",\"outputs\":[{\"name\":\"proxyContract\",\"type\":\"address\"}],\"payable\":true,\"stateMutability\":\"payable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[],\"name\":\"target\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"constructor\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"proxyAddress\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"targetAddress\",\"type\":\"address\"}],\"name\":\"ProxyDeployed\",\"type\":\"event\"}],\"devdoc\":{\"methods\":{}},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol\":\"ProxyFactory\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol\":{\"keccak256\":\"0x859cc04899b494b309ad099984dc51901bdf4483835a4ac1748d513024034af5\",\"urls\":[\"bzzr://8b31e9cc14ed2235817134d6f953316158bbc60ed429cd566f02be99174438d2\"]},\"/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol\":{\"keccak256\":\"0xd39dd329bc3458fda4cc5596e744f0f9667880368888ae6da4158de9fcc80fd2\",\"urls\":[\"bzzr://edcbae5b4a060e037a8b9d89491acfc2fe2b7dddeb8f7f6d6937474638e1f96c\"]}},\"version\":1}", + "bytecode": "0x608060405234801561001057600080fd5b506104ee806100206000396000f30060806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680636140c54c14610051578063d4b83992146100c7575b600080fd5b610085600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061011e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100d357600080fd5b506100dc610298565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000808261012a6102bd565b808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050604051809103906000f08015801561017c573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663e1c7392a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401600060405180830381600087803b1580156101e357600080fd5b505af11580156101f7573d6000803e3d6000fd5b505050507f3d2489efb661e8b1c3679865db649ca1de61d76a71184a1234de2e55786a6aad8184604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a150919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040516101f5806102ce833901905600608060405234801561001057600080fd5b506040516020806101f583398101806040528101908080519060200190929190505050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610172806100836000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680635c60da1b146100ca575b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156100a357600080fd5b60405136600082376000803683855af43d806000843e81600081146100c6578184f35b8184fd5b3480156100d657600080fd5b506100df610121565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582076d27f6725af327935f0de0f240ab38bc5ee9ba1a557fbefe47582d2e0d30dbf0029a165627a7a723058207243cb076dd8306b9e65f393af1510416ba0cae3573bb5ebe258704c220497000029", + "deployedBytecode": "0x60806040526004361061004c576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680636140c54c14610051578063d4b83992146100c7575b600080fd5b610085600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061011e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156100d357600080fd5b506100dc610298565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000808261012a6102bd565b808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050604051809103906000f08015801561017c573d6000803e3d6000fd5b5090508073ffffffffffffffffffffffffffffffffffffffff1663e1c7392a6040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401600060405180830381600087803b1580156101e357600080fd5b505af11580156101f7573d6000803e3d6000fd5b505050507f3d2489efb661e8b1c3679865db649ca1de61d76a71184a1234de2e55786a6aad8184604051808373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019250505060405180910390a150919050565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6040516101f5806102ce833901905600608060405234801561001057600080fd5b506040516020806101f583398101806040528101908080519060200190929190505050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610172806100836000396000f300608060405260043610610041576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff1680635c60da1b146100ca575b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141515156100a357600080fd5b60405136600082376000803683855af43d806000843e81600081146100c6578184f35b8184fd5b3480156100d657600080fd5b506100df610121565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff16815600a165627a7a7230582076d27f6725af327935f0de0f240ab38bc5ee9ba1a557fbefe47582d2e0d30dbf0029a165627a7a723058207243cb076dd8306b9e65f393af1510416ba0cae3573bb5ebe258704c220497000029", + "sourceMap": "1979:415:4:-;;;2035:33;8:9:-1;5:2;;;30:1;27;20:12;5:2;2035:33:4;1979:415;;;;;;", + "deployedSourceMap": "1979:415:4:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2145:247;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2008:21;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2008:21:4;;;;;;;;;;;;;;;;;;;;;;;;;;;2145:247;2231:21;2268:10;2291:7;2281:18;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2281:18:4;2268:31;;2325:4;2309:27;;;:29;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2309:29:4;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2309:29:4;;;;2348:37;2370:4;2377:7;2348:37;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2145:247;;;;:::o;2008:21::-;;;;;;;;;;;;;:::o;1979:415::-;;;;;;;;;;:::o", + "source": "/***\n* Shoutouts:\n*\n* Bytecode origin https://www.reddit.com/r/ethereum/comments/6ic49q/any_assembly_programmers_willing_to_write_a/dj5ceuw/\n* Modified version of Vitalik's https://www.reddit.com/r/ethereum/comments/6c1jui/delegatecall_forwarders_how_to_save_5098_on/\n* Credits to Jorge Izquierdo (@izqui) for coming up with this design here: https://gist.github.com/izqui/7f904443e6d19c1ab52ec7f5ad46b3a8\n* Credits to Stefan George (@Georgi87) for inspiration for many of the improvements from Gnosis Safe: https://github.com/gnosis/gnosis-safe-contracts\n*\n* This version has many improvements over the original @izqui's library like using REVERT instead of THROWing on failed calls.\n* It also implements the awesome design pattern for initializing code as seen in Gnosis Safe Factory: https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/ProxyFactory.sol\n* but unlike this last one it doesn't require that you waste storage on both the proxy and the proxied contracts (v. https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/Proxy.sol#L8 & https://github.com/gnosis/gnosis-safe-contracts/blob/master/contracts/GnosisSafe.sol#L14)\n*\n*\n* v0.0.2\n* The proxy is now only 60 bytes long in total. Constructor included.\n* No functionalities were added. The change was just to make the proxy leaner.\n*\n* v0.0.3\n* Thanks @dacarley for noticing the incorrect check for the subsequent call to the proxy. 🙌\n* Note: I'm creating a new version of this that doesn't need that one call.\n* Will add tests and put this in its own repository soon™.\n*\n* v0.0.4\n* All the merit in this fix + update of the factory is @dacarley 's. 🙌\n* Thank you! 😄\n*\n* Potential updates can be found at https://gist.github.com/GNSPS/ba7b88565c947cfd781d44cf469c2ddb\n*\n***/\n\nimport \"./Proxy.sol\";\n\npragma solidity ^0.4.19;\n\n\ninterface IDoneth {\n function init() public;\n}\n\n/* solhint-disable no-inline-assembly, indent, state-visibility, avoid-low-level-calls */\n\ncontract ProxyFactory {\n\n address public target;\n function ProxyFactory() public {}\n\n event ProxyDeployed(address proxyAddress, address targetAddress);\n\n function createProxy(address _target)\n public\n payable\n returns (address proxyContract)\n {\n Proxy prox = new Proxy(_target);\n IDoneth(address(prox)).init();\n ProxyDeployed(address(prox), _target);\n }\n}", "sourcePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol", "ast": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol", "exportedSymbols": { + "IDoneth": [ + 1442 + ], "ProxyFactory": [ - 1426 + 1485 ] }, - "id": 1427, + "id": 1486, "nodeType": "SourceUnit", "nodes": [ { - "id": 1382, + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol", + "file": "./Proxy.sol", + "id": 1437, + "nodeType": "ImportDirective", + "scope": 1486, + "sourceUnit": 1436, + "src": "1789:21:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1438, "literals": [ "solidity", "^", @@ -74,30 +98,104 @@ ".19" ], "nodeType": "PragmaDirective", - "src": "1789:24:2" + "src": "1812:24:4" }, { "baseContracts": [], "contractDependencies": [], + "contractKind": "interface", + "documentation": null, + "fullyImplemented": false, + "id": 1442, + "linearizedBaseContracts": [ + 1442 + ], + "name": "IDoneth", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 1441, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "init", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1439, + "nodeType": "ParameterList", + "parameters": [], + "src": "1874:2:4" + }, + "payable": false, + "returnParameters": { + "id": 1440, + "nodeType": "ParameterList", + "parameters": [], + "src": "1883:0:4" + }, + "scope": 1442, + "src": "1861:23:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1486, + "src": "1839:47:4" + }, + { + "baseContracts": [], + "contractDependencies": [ + 1435 + ], "contractKind": "contract", "documentation": null, "fullyImplemented": true, - "id": 1426, + "id": 1485, "linearizedBaseContracts": [ - 1426 + 1485 ], "name": "ProxyFactory", "nodeType": "ContractDefinition", "nodes": [ + { + "constant": false, + "id": 1444, + "name": "target", + "nodeType": "VariableDeclaration", + "scope": 1485, + "src": "2008:21:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1443, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2008:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, { "body": { - "id": 1385, + "id": 1447, "nodeType": "Block", - "src": "1997:7:2", + "src": "2066:2:4", "statements": [] }, "documentation": null, - "id": 1386, + "id": 1448, "implemented": true, "isConstructor": true, "isDeclaredConst": false, @@ -105,20 +203,20 @@ "name": "ProxyFactory", "nodeType": "FunctionDefinition", "parameters": { - "id": 1383, + "id": 1445, "nodeType": "ParameterList", "parameters": [], - "src": "1987:2:2" + "src": "2056:2:4" }, "payable": false, "returnParameters": { - "id": 1384, + "id": 1446, "nodeType": "ParameterList", "parameters": [], - "src": "1997:0:2" + "src": "2066:0:4" }, - "scope": 1426, - "src": "1966:38:2", + "scope": 1485, + "src": "2035:33:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -126,21 +224,21 @@ { "anonymous": false, "documentation": null, - "id": 1392, + "id": 1454, "name": "ProxyDeployed", "nodeType": "EventDefinition", "parameters": { - "id": 1391, + "id": 1453, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1388, + "id": 1450, "indexed": false, "name": "proxyAddress", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "2030:20:2", + "scope": 1454, + "src": "2094:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -148,10 +246,10 @@ "typeString": "address" }, "typeName": { - "id": 1387, + "id": 1449, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2030:7:2", + "src": "2094:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -162,12 +260,12 @@ }, { "constant": false, - "id": 1390, + "id": 1452, "indexed": false, "name": "targetAddress", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "2052:21:2", + "scope": 1454, + "src": "2116:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -175,10 +273,10 @@ "typeString": "address" }, "typeName": { - "id": 1389, + "id": 1451, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2052:7:2", + "src": "2116:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -188,114 +286,240 @@ "visibility": "internal" } ], - "src": "2029:45:2" + "src": "2093:45:4" }, - "src": "2010:65:2" + "src": "2074:65:4" }, { "body": { - "id": 1413, + "id": 1483, "nodeType": "Block", - "src": "2207:183:2", + "src": "2258:134:4", "statements": [ { - "expression": { + "assignments": [ + 1462 + ], + "declarations": [ + { + "constant": false, + "id": 1462, + "name": "prox", + "nodeType": "VariableDeclaration", + "scope": 1484, + "src": "2268:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + }, + "typeName": { + "contractScope": null, + "id": 1461, + "name": "Proxy", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1435, + "src": "2268:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1467, + "initialValue": { "argumentTypes": null, - "id": 1406, + "arguments": [ + { + "argumentTypes": null, + "id": 1465, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "2291:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2281:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_creation_nonpayable$_t_address_$returns$_t_contract$_Proxy_$1435_$", + "typeString": "function (address) returns (contract Proxy)" + }, + "typeName": { + "contractScope": null, + "id": 1463, + "name": "Proxy", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1435, + "src": "2285:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + }, + "id": 1466, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1401, - "name": "proxyContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1399, - "src": "2288:13:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1403, - "name": "_target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1394, - "src": "2320:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "names": [], + "nodeType": "FunctionCall", + "src": "2281:18:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2268:31:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1470, + "name": "prox", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "2325:4:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + ], + "id": 1469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2317:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2317:13:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } } - }, - { - "argumentTypes": null, - "id": 1404, - "name": "_data", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1468, + "name": "IDoneth", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1396, - "src": "2329:5:2", + "referencedDeclaration": 1442, + "src": "2309:7:4", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_type$_t_contract$_IDoneth_$1442_$", + "typeString": "type(contract IDoneth)" } - ], - "id": 1402, - "name": "createProxyImpl", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1425, - "src": "2304:15:2", + }, + "id": 1472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2309:22:4", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$_t_address_$", - "typeString": "function (address,bytes memory) returns (address)" + "typeIdentifier": "t_contract$_IDoneth_$1442", + "typeString": "contract IDoneth" } }, - "id": 1405, + "id": 1473, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2304:31:2", + "memberName": "init", + "nodeType": "MemberAccess", + "referencedDeclaration": 1441, + "src": "2309:27:4", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" } }, - "src": "2288:47:2", + "id": 1474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2309:29:4", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "id": 1407, + "id": 1475, "nodeType": "ExpressionStatement", - "src": "2288:47:2" + "src": "2309:29:4" }, { "expression": { @@ -303,12 +527,50 @@ "arguments": [ { "argumentTypes": null, - "id": 1409, - "name": "proxyContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1399, - "src": "2360:13:2", + "arguments": [ + { + "argumentTypes": null, + "id": 1478, + "name": "prox", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "2370:4:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + ], + "id": 1477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2362:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2362:13:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -316,12 +578,12 @@ }, { "argumentTypes": null, - "id": 1410, + "id": 1480, "name": "_target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1394, - "src": "2375:7:2", + "referencedDeclaration": 1456, + "src": "2377:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -339,18 +601,18 @@ "typeString": "address" } ], - "id": 1408, + "id": 1476, "name": "ProxyDeployed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1392, - "src": "2346:13:2", + "referencedDeclaration": 1454, + "src": "2348:13:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 1411, + "id": 1481, "isConstant": false, "isLValue": false, "isPure": false, @@ -358,20 +620,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2346:37:2", + "src": "2348:37:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1412, + "id": 1482, "nodeType": "ExpressionStatement", - "src": "2346:37:2" + "src": "2348:37:4" } ] }, "documentation": null, - "id": 1414, + "id": 1484, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -379,16 +641,16 @@ "name": "createProxy", "nodeType": "FunctionDefinition", "parameters": { - "id": 1397, + "id": 1457, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1394, + "id": 1456, "name": "_target", "nodeType": "VariableDeclaration", - "scope": 1414, - "src": "2102:15:2", + "scope": 1484, + "src": "2166:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -396,10 +658,10 @@ "typeString": "address" }, "typeName": { - "id": 1393, + "id": 1455, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2102:7:2", + "src": "2166:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -407,48 +669,22 @@ }, "value": null, "visibility": "internal" - }, - { - "constant": false, - "id": 1396, - "name": "_data", - "nodeType": "VariableDeclaration", - "scope": 1414, - "src": "2119:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1395, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2119:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" } ], - "src": "2101:30:2" + "src": "2165:17:4" }, "payable": true, "returnParameters": { - "id": 1400, + "id": 1460, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1399, + "id": 1459, "name": "proxyContract", "nodeType": "VariableDeclaration", - "scope": 1414, - "src": "2180:21:2", + "scope": 1484, + "src": "2231:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -456,10 +692,10 @@ "typeString": "address" }, "typeName": { - "id": 1398, + "id": 1458, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2180:7:2", + "src": "2231:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -469,262 +705,173 @@ "visibility": "internal" } ], - "src": "2179:23:2" + "src": "2230:23:4" }, - "scope": 1426, - "src": "2081:309:2", + "scope": 1485, + "src": "2145:247:4", "stateMutability": "payable", "superFunction": null, "visibility": "public" + } + ], + "scope": 1486, + "src": "1979:415:4" + } + ], + "src": "1789:605:4" + }, + "legacyAST": { + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol", + "exportedSymbols": { + "IDoneth": [ + 1442 + ], + "ProxyFactory": [ + 1485 + ] + }, + "id": 1486, + "nodeType": "SourceUnit", + "nodes": [ + { + "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Proxy.sol", + "file": "./Proxy.sol", + "id": 1437, + "nodeType": "ImportDirective", + "scope": 1486, + "sourceUnit": 1436, + "src": "1789:21:4", + "symbolAliases": [], + "unitAlias": "" + }, + { + "id": 1438, + "literals": [ + "solidity", + "^", + "0.4", + ".19" + ], + "nodeType": "PragmaDirective", + "src": "1812:24:4" + }, + { + "baseContracts": [], + "contractDependencies": [], + "contractKind": "interface", + "documentation": null, + "fullyImplemented": false, + "id": 1442, + "linearizedBaseContracts": [ + 1442 + ], + "name": "IDoneth", + "nodeType": "ContractDefinition", + "nodes": [ + { + "body": null, + "documentation": null, + "id": 1441, + "implemented": false, + "isConstructor": false, + "isDeclaredConst": false, + "modifiers": [], + "name": "init", + "nodeType": "FunctionDefinition", + "parameters": { + "id": 1439, + "nodeType": "ParameterList", + "parameters": [], + "src": "1874:2:4" + }, + "payable": false, + "returnParameters": { + "id": 1440, + "nodeType": "ParameterList", + "parameters": [], + "src": "1883:0:4" + }, + "scope": 1442, + "src": "1861:23:4", + "stateMutability": "nonpayable", + "superFunction": null, + "visibility": "public" + } + ], + "scope": 1486, + "src": "1839:47:4" + }, + { + "baseContracts": [], + "contractDependencies": [ + 1435 + ], + "contractKind": "contract", + "documentation": null, + "fullyImplemented": true, + "id": 1485, + "linearizedBaseContracts": [ + 1485 + ], + "name": "ProxyFactory", + "nodeType": "ContractDefinition", + "nodes": [ + { + "constant": false, + "id": 1444, + "name": "target", + "nodeType": "VariableDeclaration", + "scope": 1485, + "src": "2008:21:4", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 1443, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "2008:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" }, { "body": { - "id": 1424, + "id": 1447, "nodeType": "Block", - "src": "2512:1207:2", - "statements": [ - { - "externalReferences": [ - { - "proxyContract": { - "declaration": 1421, - "isOffset": false, - "isSlot": false, - "src": "3186:13:2", - "valueSize": 1 - } - }, - { - "_target": { - "declaration": 1416, - "isOffset": false, - "isSlot": false, - "src": "2681:7:2", - "valueSize": 1 - } - }, - { - "_data": { - "declaration": 1418, - "isOffset": false, - "isSlot": false, - "src": "3487:5:2", - "valueSize": 1 - } - }, - { - "proxyContract": { - "declaration": 1421, - "isOffset": false, - "isSlot": false, - "src": "3290:13:2", - "valueSize": 1 - } - }, - { - "proxyContract": { - "declaration": 1421, - "isOffset": false, - "isSlot": false, - "src": "3574:13:2", - "valueSize": 1 - } - }, - { - "_data": { - "declaration": 1418, - "isOffset": false, - "isSlot": false, - "src": "3604:5:2", - "valueSize": 1 - } - } - ], - "id": 1423, - "nodeType": "InlineAssembly", - "operations": "{\n let contractCode := mload(0x40)\n mstore(add(contractCode, 0x0b), _target)\n mstore(sub(contractCode, 0x09), 0x000000000000000000603160008181600b9039f3600080808080368092803773)\n mstore(add(contractCode, 0x2b), 0x5af43d828181803e808314602f57f35bfd000000000000000000000000000000)\n proxyContract := create(0, contractCode, 60)\n if iszero(extcodesize(proxyContract))\n {\n revert(0, 0)\n }\n let dataLength := mload(_data)\n if iszero(iszero(dataLength))\n {\n if iszero(call(gas(), proxyContract, callvalue(), add(_data, 0x20), dataLength, 0, 0))\n {\n revert(0, 0)\n }\n }\n}", - "src": "2522:1197:2" - } - ] + "src": "2066:2:4", + "statements": [] }, "documentation": null, - "id": 1425, + "id": 1448, "implemented": true, - "isConstructor": false, + "isConstructor": true, "isDeclaredConst": false, "modifiers": [], - "name": "createProxyImpl", + "name": "ProxyFactory", "nodeType": "FunctionDefinition", "parameters": { - "id": 1419, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1416, - "name": "_target", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "2421:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1415, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2421:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1418, - "name": "_data", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "2438:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1417, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2438:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2420:30:2" - }, - "payable": false, - "returnParameters": { - "id": 1422, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1421, - "name": "proxyContract", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "2485:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1420, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2485:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2484:23:2" - }, - "scope": 1426, - "src": "2396:1323:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "internal" - } - ], - "scope": 1427, - "src": "1907:1814:2" - } - ], - "src": "1789:1932:2" - }, - "legacyAST": { - "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/ProxyFactory.sol", - "exportedSymbols": { - "ProxyFactory": [ - 1426 - ] - }, - "id": 1427, - "nodeType": "SourceUnit", - "nodes": [ - { - "id": 1382, - "literals": [ - "solidity", - "^", - "0.4", - ".19" - ], - "nodeType": "PragmaDirective", - "src": "1789:24:2" - }, - { - "baseContracts": [], - "contractDependencies": [], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1426, - "linearizedBaseContracts": [ - 1426 - ], - "name": "ProxyFactory", - "nodeType": "ContractDefinition", - "nodes": [ - { - "body": { - "id": 1385, - "nodeType": "Block", - "src": "1997:7:2", - "statements": [] - }, - "documentation": null, - "id": 1386, - "implemented": true, - "isConstructor": true, - "isDeclaredConst": false, - "modifiers": [], - "name": "ProxyFactory", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1383, + "id": 1445, "nodeType": "ParameterList", "parameters": [], - "src": "1987:2:2" + "src": "2056:2:4" }, "payable": false, "returnParameters": { - "id": 1384, + "id": 1446, "nodeType": "ParameterList", "parameters": [], - "src": "1997:0:2" + "src": "2066:0:4" }, - "scope": 1426, - "src": "1966:38:2", + "scope": 1485, + "src": "2035:33:4", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -732,21 +879,21 @@ { "anonymous": false, "documentation": null, - "id": 1392, + "id": 1454, "name": "ProxyDeployed", "nodeType": "EventDefinition", "parameters": { - "id": 1391, + "id": 1453, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1388, + "id": 1450, "indexed": false, "name": "proxyAddress", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "2030:20:2", + "scope": 1454, + "src": "2094:20:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -754,10 +901,10 @@ "typeString": "address" }, "typeName": { - "id": 1387, + "id": 1449, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2030:7:2", + "src": "2094:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -768,12 +915,12 @@ }, { "constant": false, - "id": 1390, + "id": 1452, "indexed": false, "name": "targetAddress", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "2052:21:2", + "scope": 1454, + "src": "2116:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -781,10 +928,10 @@ "typeString": "address" }, "typeName": { - "id": 1389, + "id": 1451, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2052:7:2", + "src": "2116:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -794,114 +941,240 @@ "visibility": "internal" } ], - "src": "2029:45:2" + "src": "2093:45:4" }, - "src": "2010:65:2" + "src": "2074:65:4" }, { "body": { - "id": 1413, + "id": 1483, "nodeType": "Block", - "src": "2207:183:2", + "src": "2258:134:4", "statements": [ { - "expression": { + "assignments": [ + 1462 + ], + "declarations": [ + { + "constant": false, + "id": 1462, + "name": "prox", + "nodeType": "VariableDeclaration", + "scope": 1484, + "src": "2268:10:4", + "stateVariable": false, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + }, + "typeName": { + "contractScope": null, + "id": 1461, + "name": "Proxy", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1435, + "src": "2268:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 1467, + "initialValue": { "argumentTypes": null, - "id": 1406, + "arguments": [ + { + "argumentTypes": null, + "id": 1465, + "name": "_target", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1456, + "src": "2291:7:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1464, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "nodeType": "NewExpression", + "src": "2281:9:4", + "typeDescriptions": { + "typeIdentifier": "t_function_creation_nonpayable$_t_address_$returns$_t_contract$_Proxy_$1435_$", + "typeString": "function (address) returns (contract Proxy)" + }, + "typeName": { + "contractScope": null, + "id": 1463, + "name": "Proxy", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 1435, + "src": "2285:5:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + }, + "id": 1466, "isConstant": false, "isLValue": false, "isPure": false, + "kind": "functionCall", "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 1401, - "name": "proxyContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1399, - "src": "2288:13:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 1403, - "name": "_target", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1394, - "src": "2320:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "names": [], + "nodeType": "FunctionCall", + "src": "2281:18:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + }, + "nodeType": "VariableDeclarationStatement", + "src": "2268:31:4" + }, + { + "expression": { + "argumentTypes": null, + "arguments": [], + "expression": { + "argumentTypes": [], + "expression": { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "arguments": [ + { + "argumentTypes": null, + "id": 1470, + "name": "prox", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "2325:4:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + ], + "id": 1469, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2317:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1471, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2317:13:4", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } } - }, - { - "argumentTypes": null, - "id": 1404, - "name": "_data", + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_address", + "typeString": "address" + } + ], + "id": 1468, + "name": "IDoneth", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1396, - "src": "2329:5:2", + "referencedDeclaration": 1442, + "src": "2309:7:4", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_address", - "typeString": "address" - }, - { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes memory" + "typeIdentifier": "t_type$_t_contract$_IDoneth_$1442_$", + "typeString": "type(contract IDoneth)" } - ], - "id": 1402, - "name": "createProxyImpl", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1425, - "src": "2304:15:2", + }, + "id": 1472, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2309:22:4", "typeDescriptions": { - "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bytes_memory_ptr_$returns$_t_address_$", - "typeString": "function (address,bytes memory) returns (address)" + "typeIdentifier": "t_contract$_IDoneth_$1442", + "typeString": "contract IDoneth" } }, - "id": 1405, + "id": 1473, "isConstant": false, "isLValue": false, "isPure": false, - "kind": "functionCall", "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2304:31:2", + "memberName": "init", + "nodeType": "MemberAccess", + "referencedDeclaration": 1441, + "src": "2309:27:4", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_function_external_nonpayable$__$returns$__$", + "typeString": "function () external" } }, - "src": "2288:47:2", + "id": 1474, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "functionCall", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2309:29:4", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_tuple$__$", + "typeString": "tuple()" } }, - "id": 1407, + "id": 1475, "nodeType": "ExpressionStatement", - "src": "2288:47:2" + "src": "2309:29:4" }, { "expression": { @@ -909,12 +1182,50 @@ "arguments": [ { "argumentTypes": null, - "id": 1409, - "name": "proxyContract", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1399, - "src": "2360:13:2", + "arguments": [ + { + "argumentTypes": null, + "id": 1478, + "name": "prox", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1462, + "src": "2370:4:4", + "typeDescriptions": { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + } + ], + "expression": { + "argumentTypes": [ + { + "typeIdentifier": "t_contract$_Proxy_$1435", + "typeString": "contract Proxy" + } + ], + "id": 1477, + "isConstant": false, + "isLValue": false, + "isPure": true, + "lValueRequested": false, + "nodeType": "ElementaryTypeNameExpression", + "src": "2362:7:4", + "typeDescriptions": { + "typeIdentifier": "t_type$_t_address_$", + "typeString": "type(address)" + }, + "typeName": "address" + }, + "id": 1479, + "isConstant": false, + "isLValue": false, + "isPure": false, + "kind": "typeConversion", + "lValueRequested": false, + "names": [], + "nodeType": "FunctionCall", + "src": "2362:13:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -922,12 +1233,12 @@ }, { "argumentTypes": null, - "id": 1410, + "id": 1480, "name": "_target", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1394, - "src": "2375:7:2", + "referencedDeclaration": 1456, + "src": "2377:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -945,18 +1256,18 @@ "typeString": "address" } ], - "id": 1408, + "id": 1476, "name": "ProxyDeployed", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1392, - "src": "2346:13:2", + "referencedDeclaration": 1454, + "src": "2348:13:4", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$returns$__$", "typeString": "function (address,address)" } }, - "id": 1411, + "id": 1481, "isConstant": false, "isLValue": false, "isPure": false, @@ -964,20 +1275,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2346:37:2", + "src": "2348:37:4", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1412, + "id": 1482, "nodeType": "ExpressionStatement", - "src": "2346:37:2" + "src": "2348:37:4" } ] }, "documentation": null, - "id": 1414, + "id": 1484, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -985,16 +1296,16 @@ "name": "createProxy", "nodeType": "FunctionDefinition", "parameters": { - "id": 1397, + "id": 1457, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1394, + "id": 1456, "name": "_target", "nodeType": "VariableDeclaration", - "scope": 1414, - "src": "2102:15:2", + "scope": 1484, + "src": "2166:15:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1002,10 +1313,10 @@ "typeString": "address" }, "typeName": { - "id": 1393, + "id": 1455, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2102:7:2", + "src": "2166:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1013,48 +1324,22 @@ }, "value": null, "visibility": "internal" - }, - { - "constant": false, - "id": 1396, - "name": "_data", - "nodeType": "VariableDeclaration", - "scope": 1414, - "src": "2119:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1395, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2119:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" } ], - "src": "2101:30:2" + "src": "2165:17:4" }, "payable": true, "returnParameters": { - "id": 1400, + "id": 1460, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1399, + "id": 1459, "name": "proxyContract", "nodeType": "VariableDeclaration", - "scope": 1414, - "src": "2180:21:2", + "scope": 1484, + "src": "2231:21:4", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1062,10 +1347,10 @@ "typeString": "address" }, "typeName": { - "id": 1398, + "id": 1458, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2180:7:2", + "src": "2231:7:4", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1075,197 +1360,20 @@ "visibility": "internal" } ], - "src": "2179:23:2" + "src": "2230:23:4" }, - "scope": 1426, - "src": "2081:309:2", + "scope": 1485, + "src": "2145:247:4", "stateMutability": "payable", "superFunction": null, "visibility": "public" - }, - { - "body": { - "id": 1424, - "nodeType": "Block", - "src": "2512:1207:2", - "statements": [ - { - "externalReferences": [ - { - "proxyContract": { - "declaration": 1421, - "isOffset": false, - "isSlot": false, - "src": "3186:13:2", - "valueSize": 1 - } - }, - { - "_target": { - "declaration": 1416, - "isOffset": false, - "isSlot": false, - "src": "2681:7:2", - "valueSize": 1 - } - }, - { - "_data": { - "declaration": 1418, - "isOffset": false, - "isSlot": false, - "src": "3487:5:2", - "valueSize": 1 - } - }, - { - "proxyContract": { - "declaration": 1421, - "isOffset": false, - "isSlot": false, - "src": "3290:13:2", - "valueSize": 1 - } - }, - { - "proxyContract": { - "declaration": 1421, - "isOffset": false, - "isSlot": false, - "src": "3574:13:2", - "valueSize": 1 - } - }, - { - "_data": { - "declaration": 1418, - "isOffset": false, - "isSlot": false, - "src": "3604:5:2", - "valueSize": 1 - } - } - ], - "id": 1423, - "nodeType": "InlineAssembly", - "operations": "{\n let contractCode := mload(0x40)\n mstore(add(contractCode, 0x0b), _target)\n mstore(sub(contractCode, 0x09), 0x000000000000000000603160008181600b9039f3600080808080368092803773)\n mstore(add(contractCode, 0x2b), 0x5af43d828181803e808314602f57f35bfd000000000000000000000000000000)\n proxyContract := create(0, contractCode, 60)\n if iszero(extcodesize(proxyContract))\n {\n revert(0, 0)\n }\n let dataLength := mload(_data)\n if iszero(iszero(dataLength))\n {\n if iszero(call(gas(), proxyContract, callvalue(), add(_data, 0x20), dataLength, 0, 0))\n {\n revert(0, 0)\n }\n }\n}", - "src": "2522:1197:2" - } - ] - }, - "documentation": null, - "id": 1425, - "implemented": true, - "isConstructor": false, - "isDeclaredConst": false, - "modifiers": [], - "name": "createProxyImpl", - "nodeType": "FunctionDefinition", - "parameters": { - "id": 1419, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1416, - "name": "_target", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "2421:15:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1415, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2421:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 1418, - "name": "_data", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "2438:11:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory_ptr", - "typeString": "bytes" - }, - "typeName": { - "id": 1417, - "name": "bytes", - "nodeType": "ElementaryTypeName", - "src": "2438:5:2", - "typeDescriptions": { - "typeIdentifier": "t_bytes_storage_ptr", - "typeString": "bytes" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2420:30:2" - }, - "payable": false, - "returnParameters": { - "id": 1422, - "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 1421, - "name": "proxyContract", - "nodeType": "VariableDeclaration", - "scope": 1425, - "src": "2485:21:2", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - }, - "typeName": { - "id": 1420, - "name": "address", - "nodeType": "ElementaryTypeName", - "src": "2485:7:2", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2484:23:2" - }, - "scope": 1426, - "src": "2396:1323:2", - "stateMutability": "nonpayable", - "superFunction": null, - "visibility": "internal" } ], - "scope": 1427, - "src": "1907:1814:2" + "scope": 1486, + "src": "1979:415:4" } ], - "src": "1789:1932:2" + "src": "1789:605:4" }, "compiler": { "name": "solc", @@ -1293,13 +1401,19 @@ } }, "links": {}, - "address": "0xe917053D93dD36a4E66c4BdFB96eD098983B579d", - "transactionHash": "0xc364e5cc20a56d2dcabd0d40a4d12fc12c153f3c592b34cb6224d09c6839fbe2" + "address": "0x4A4160728678a8572e419E697dC83bFFa7382Ce8", + "transactionHash": "0x1119ecc73dd855582acb2ba370e6963bafbd9a909bebc4a558b5c5a4fc3450e4" + }, + "1": { + "events": { + }, + "links": {}, + "address": "0xb3291e65d5fae0d4f2f94b48a97337000bf339d7", + "transactionHash": "0x73b03fd9d9b9c649837232bcfaf82c788a773db3be86c20ffc46f659120822f4" } }, "schemaVersion": "3.3.2", - "updatedAt": "2021-05-01T10:41:09.778Z", - "networkType": "ethereum", + "updatedAt": "2021-05-02T12:39:45.353Z", "devdoc": { "methods": {} }, diff --git a/build/contracts/SafeMath.json b/build/contracts/SafeMath.json index f90eae35..dc0ddb5c 100644 --- a/build/contracts/SafeMath.json +++ b/build/contracts/SafeMath.json @@ -1,33 +1,30 @@ { "contractName": "SafeMath", "abi": [], - "metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"methods\":{},\"title\":\"SafeMath\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol\":\"SafeMath\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol\":{\"keccak256\":\"0xf4cee83d417df0c8d96b5a2c651f061dcec6f27d427f7c1790649772774abdb8\",\"urls\":[\"bzzr://b2a7821b45d082849046709df4c0f691d76d3d1def45d6ba9eb085764fb482cf\"]}},\"version\":1}", - "bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a723058206e24702f9f27b05a799aca80469d473e9f2985c9972e9b65fe4e32fba06021f40029", - "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a723058206e24702f9f27b05a799aca80469d473e9f2985c9972e9b65fe4e32fba06021f40029", - "sourceMap": "13723:1304:0:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", - "deployedSourceMap": "13723:1304:0:-;;;;;;;;", - "source": "pragma solidity ^0.4.15;\n\n/**\n * @title Doneth (Doneth)\n * @dev Doneth is a contract that allows shared access to funds\n * in the form of Ether and ERC20 tokens. It is especially relevant\n * to donation based projects. The admins of the contract determine \n * who is a member, and each member gets a number of shares. The \n * number of shares each member has determines how much Ether/ERC20 \n * the member can withdraw from the contract.\n */\n\n/*\n * Ownable\n *\n * Base contract with an owner.\n * Provides onlyOwner modifier, which prevents function from running\n * if it is called by anyone other than the owner.\n */\n\ncontract Ownable {\n address public owner;\n\n function Ownable() public {\n owner = tx.origin;\n }\n\n modifier onlyOwner() {\n require(msg.sender == owner || tx.origin == owner);\n _;\n }\n\n function transferOwnership(address newOwner) onlyOwner public {\n if (newOwner != address(0)) {\n owner = newOwner;\n }\n }\n}\n\ncontract Doneth is Ownable {\n using SafeMath for uint256; \n\n bool public initialized;\n\n // Name of the contract\n string public name;\n\n // Sum of all shares allocated to members\n uint256 public totalShares;\n\n // Sum of all withdrawals done by members\n uint256 public totalWithdrawn;\n\n // Block number of when the contract was created\n uint256 public genesisBlockNumber;\n\n // Number of decimal places for floating point division\n uint256 constant public PRECISION = 18;\n\n // Variables for shared expense allocation\n uint256 public sharedExpense;\n uint256 public sharedExpenseWithdrawn;\n\n // Used to keep track of members\n mapping(address => Member) public members;\n address[] public memberKeys;\n struct Member {\n bool exists;\n bool admin;\n uint256 shares;\n uint256 withdrawn;\n string memberName;\n mapping(address => uint256) tokensWithdrawn;\n }\n\n // Used to keep track of ERC20 tokens used and how much withdrawn\n mapping(address => Token) public tokens;\n address[] public tokenKeys;\n struct Token {\n bool exists;\n uint256 totalWithdrawn;\n }\n\n // constructor() public {\n // genesisBlockNumber = block.number;\n // addMember(tx.origin, 1, true, \"\");\n // }\n\n\n function init(string _contractName, string _founderName) public {\n require(!initialized, \"ALREADY INITIALIZED\");\n initialized = true;\n owner = tx.origin;\n genesisBlockNumber = block.number;\n if (bytes(_contractName).length > 21) revert();\n if (bytes(_founderName).length > 21) revert();\n name = _contractName;\n // addMember(founder, 1, true, _founderName);\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = true;\n newMember.memberName = _founderName;\n\n members[tx.origin] = newMember;\n memberKeys.push(tx.origin);\n // addShare(tx.origin, shares);\n totalShares = totalShares.add(1);\n members[tx.origin].shares = members[tx.origin].shares.add(1);\n AddShare(tx.origin, 1, members[tx.origin].shares);\n // AddShare(tx.origin, 1, members[tx.origin].shares);\n // AddShare(msg.sender, 1, members[tx.origin].shares);\n }\n\n event Deposit(address from, uint value);\n event Withdraw(address from, uint value, uint256 newTotalWithdrawn);\n event TokenWithdraw(address from, uint value, address token, uint amount);\n event AddShare(address who, uint256 addedShares, uint256 newTotalShares);\n event RemoveShare(address who, uint256 removedShares, uint256 newTotalShares);\n event ChangePrivilege(address who, bool oldValue, bool newValue);\n event ChangeContractName(string oldValue, string newValue);\n event ChangeMemberName(address who, string oldValue, string newValue);\n event ChangeSharedExpense(uint256 contractBalance, uint256 oldValue, uint256 newValue);\n event WithdrawSharedExpense(address from, address to, uint value, uint256 newSharedExpenseWithdrawn);\n\n // Fallback function accepts Ether from donators\n function () public payable {\n Deposit(msg.sender, msg.value);\n }\n\n modifier onlyAdmin() { \n if (msg.sender != owner && !members[msg.sender].admin) revert(); \n _;\n }\n\n modifier onlyExisting(address who) { \n if (!members[who].exists) revert(); \n _;\n }\n\n // Series of getter functions for contract data\n function getMemberCount() public constant returns(uint) {\n return memberKeys.length;\n }\n \n function getMemberAtKey(uint key) public constant returns(address) {\n return memberKeys[key];\n }\n \n function getBalance() public constant returns(uint256 balance) {\n return this.balance;\n }\n \n function getContractInfo() public constant returns(string name, address owner, uint256 genesisBlockNumber, uint256 totalShares, uint256 totalWithdrawn) {\n return (string(name), owner, genesisBlockNumber, totalShares, totalWithdrawn);\n }\n \n function returnMember(address _address) public constant onlyExisting(_address) returns(bool admin, uint256 shares, uint256 withdrawn, string memberName) {\n Member memory m = members[_address];\n return (m.admin, m.shares, m.withdrawn, m.memberName);\n }\n\n function checkERC20Balance(address token) public constant returns(uint256) {\n return ERC20(token).balanceOf(address(this));\n // if (!tokens[token].exists && balance > 0) {\n // tokens[token].exists = true;\n // }\n // return balance;\n }\n\n // Function to add members to the contract \n function addMember(address who, uint256 shares, bool admin, string memberName) public onlyAdmin() {\n // Don't allow the same member to be added twice\n if (members[who].exists) revert();\n if (bytes(memberName).length > 21) revert();\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = admin;\n newMember.memberName = memberName;\n\n members[who] = newMember;\n memberKeys.push(who);\n addShare(who, shares);\n }\n\n function updateMember(address who, uint256 shares, bool isAdmin, string name) public onlyAdmin() {\n if (sha3(members[who].memberName) != sha3(name)) changeMemberName(who, name);\n if (members[who].admin != isAdmin) changeAdminPrivilege(who, isAdmin);\n if (members[who].shares != shares) allocateShares(who, shares);\n }\n\n // Only owner, admin or member can change member's name\n function changeMemberName(address who, string newName) public onlyExisting(who) {\n if (msg.sender != who && msg.sender != owner && !members[msg.sender].admin) revert();\n if (bytes(newName).length > 21) revert();\n ChangeMemberName(who, members[who].memberName, newName);\n members[who].memberName = newName;\n }\n\n function changeAdminPrivilege(address who, bool newValue) public onlyAdmin() {\n ChangePrivilege(who, members[who].admin, newValue);\n members[who].admin = newValue; \n }\n\n // Only admins and owners can change the contract name\n function changeContractName(string newName) public onlyAdmin() {\n if (bytes(newName).length > 21) revert();\n ChangeContractName(name, newName);\n name = newName;\n }\n\n // Shared expense allocation allows admins to withdraw an amount to be used for shared\n // expenses. Shared expense allocation subtracts from the total balance of the contract. \n // Only owner can change this amount.\n function changeSharedExpenseAllocation(uint256 newAllocation) public onlyOwner() {\n if (newAllocation < sharedExpenseWithdrawn) revert();\n if (newAllocation.sub(sharedExpenseWithdrawn) > this.balance) revert();\n\n ChangeSharedExpense(this.balance, sharedExpense, newAllocation);\n sharedExpense = newAllocation;\n }\n\n // Set share amount explicitly by calculating difference then adding or removing accordingly\n function allocateShares(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n uint256 currentShares = members[who].shares;\n if (amount == currentShares) revert();\n if (amount > currentShares) {\n addShare(who, amount.sub(currentShares));\n } else {\n removeShare(who, currentShares.sub(amount));\n }\n }\n\n // Increment the number of shares for a member\n function addShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.add(amount);\n members[who].shares = members[who].shares.add(amount);\n AddShare(who, amount, members[who].shares);\n }\n\n // Decrement the number of shares for a member\n function removeShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.sub(amount);\n members[who].shares = members[who].shares.sub(amount);\n RemoveShare(who, amount, members[who].shares);\n }\n\n // Function for a member to withdraw Ether from the contract proportional\n // to the amount of shares they have. Calculates the totalWithdrawableAmount\n // in Ether based on the member's share and the Ether balance of the contract,\n // then subtracts the amount of Ether that the member has already previously\n // withdrawn.\n function withdraw(uint256 amount) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableAmount(msg.sender);\n if (amount > newTotal.sub(members[msg.sender].withdrawn)) revert();\n \n members[msg.sender].withdrawn = members[msg.sender].withdrawn.add(amount);\n totalWithdrawn = totalWithdrawn.add(amount);\n msg.sender.transfer(amount);\n Withdraw(msg.sender, amount, totalWithdrawn);\n }\n\n // Withdrawal function for ERC20 tokens\n function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token);\n if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert();\n\n members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount);\n tokens[token].totalWithdrawn = tokens[token].totalWithdrawn.add(amount);\n ERC20(token).transfer(msg.sender, amount);\n TokenWithdraw(msg.sender, amount, token, tokens[token].totalWithdrawn);\n }\n\n // Withdraw from shared expense allocation. Total withdrawable is calculated as \n // sharedExpense minus sharedExpenseWithdrawn. Only Admin can withdraw from shared expense.\n function withdrawSharedExpense(uint256 amount, address to) public onlyAdmin() {\n if (amount > calculateTotalExpenseWithdrawableAmount()) revert();\n \n sharedExpenseWithdrawn = sharedExpenseWithdrawn.add(amount);\n to.transfer(amount);\n WithdrawSharedExpense(msg.sender, to, amount, sharedExpenseWithdrawn);\n }\n\n // Converts from shares to Eth.\n // Ex: 2 shares, 4 total shares, 40 Eth balance\n // 40 Eth / 4 total shares = 10 eth per share * 2 shares = 20 Eth to cash out\n function calculateTotalWithdrawableAmount(address who) public constant onlyExisting(who) returns (uint256) {\n // Total balance to calculate share from = \n // contract balance + totalWithdrawn - sharedExpense + sharedExpenseWithdrawn\n uint256 balanceSum = this.balance.add(totalWithdrawn);\n balanceSum = balanceSum.sub(sharedExpense);\n balanceSum = balanceSum.add(sharedExpenseWithdrawn);\n \n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 ethPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 ethPPN = ethPerSharePPN.mul(members[who].shares);\n uint256 ethVal = ethPPN.div(10**PRECISION); \n return ethVal;\n }\n\n\n function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) {\n uint256 balanceSum = checkERC20Balance(token).add(tokens[token].totalWithdrawn);\n\n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 tokPPN = tokPerSharePPN.mul(members[who].shares);\n uint256 tokVal = tokPPN.div(10**PRECISION); \n return tokVal;\n }\n\n function calculateTotalExpenseWithdrawableAmount() public constant returns(uint256) {\n return sharedExpense.sub(sharedExpenseWithdrawn);\n }\n\n // Used for testing\n function delegatePercent(uint256 a, uint256 b, uint256 c) public constant returns (uint256) {\n return a.percent(b, c);\n }\n}\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n\n // Using from SO: https://stackoverflow.com/questions/42738640/division-in-ethereum-solidity/42739843#42739843\n // Adapted to use SafeMath and uint256.\n function percent(uint256 numerator, uint256 denominator, uint256 precision) internal constant returns(uint256 quotient) {\n // caution, check safe-to-multiply here\n uint256 _numerator = mul(numerator, 10 ** (precision+1));\n // with rounding of last digit\n uint256 _quotient = (div(_numerator, denominator) + 5) / 10;\n return (_quotient);\n }\n}\n\n", + "metadata": "{\"compiler\":{\"version\":\"0.4.24+commit.e67f0147\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"methods\":{},\"title\":\"SafeMath\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol\":\"SafeMath\"},\"evmVersion\":\"byzantium\",\"libraries\":{},\"optimizer\":{\"enabled\":false,\"runs\":200},\"remappings\":[]},\"sources\":{\"/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol\":{\"keccak256\":\"0x3d466a37b9c08a02e90a41af67298e80eafca59c5a67874053bf2e7a0c908670\",\"urls\":[\"bzzr://1e256920e25d44723615897aa284a414988c1e7cee7ac9d6247a20ef19d81b4b\"]}},\"version\":1}", + "bytecode": "0x604c602c600b82828239805160001a60731460008114601c57601e565bfe5b5030600052607381538281f30073000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582082243a5fe6772deb393da4a50d842b22bb128b417d3e84480a9fe3d5001aea3d0029", + "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600080fd00a165627a7a7230582082243a5fe6772deb393da4a50d842b22bb128b417d3e84480a9fe3d5001aea3d0029", + "sourceMap": "12702:1304:0:-;;132:2:-1;166:7;155:9;146:7;137:37;252:7;246:14;243:1;238:23;232:4;229:33;270:1;265:20;;;;222:63;;265:20;274:9;222:63;;298:9;295:1;288:20;328:4;319:7;311:22;352:7;343;336:24", + "deployedSourceMap": "12702:1304:0:-;;;;;;;;", + "source": "pragma solidity ^0.4.15;\n\n/**\n * @title Doneth (Doneth)\n * @dev Doneth is a contract that allows shared access to funds\n * in the form of Ether and ERC20 tokens. It is especially relevant\n * to donation based projects. The admins of the contract determine \n * who is a member, and each member gets a number of shares. The \n * number of shares each member has determines how much Ether/ERC20 \n * the member can withdraw from the contract.\n */\n\n\ncontract Doneth {\n\n address public implementation;\n // constructor(address _implementation) public {}\n\n address public owner;\n\n function Ownable() public {\n owner = tx.origin;\n }\n\n modifier onlyOwner() {\n require(msg.sender == owner || tx.origin == owner);\n _;\n }\n\n function transferOwnership(address newOwner) onlyOwner public {\n if (newOwner != address(0)) {\n owner = newOwner;\n }\n }\n\n using SafeMath for uint256; \n\n bool public initialized;\n\n // Name of the contract\n string public name;\n\n // Sum of all shares allocated to members\n uint256 public totalShares;\n\n // Sum of all withdrawals done by members\n uint256 public totalWithdrawn;\n\n // Block number of when the contract was created\n uint256 public genesisBlockNumber;\n\n // Number of decimal places for floating point division\n uint256 constant public PRECISION = 18;\n\n // Variables for shared expense allocation\n uint256 public sharedExpense;\n uint256 public sharedExpenseWithdrawn;\n\n // Used to keep track of members\n mapping(address => Member) public members;\n address[] public memberKeys;\n struct Member {\n bool exists;\n bool admin;\n uint256 shares;\n uint256 withdrawn;\n string memberName;\n mapping(address => uint256) tokensWithdrawn;\n }\n\n // Used to keep track of ERC20 tokens used and how much withdrawn\n mapping(address => uint256) public tokens;\n\n function init() public {\n require(!initialized);\n initialized = true;\n\n owner = tx.origin;\n genesisBlockNumber = block.number;\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = true;\n members[tx.origin] = newMember;\n memberKeys.push(tx.origin);\n\n totalShares = totalShares.add(1);\n members[tx.origin].shares = members[tx.origin].shares.add(1);\n AddShare(tx.origin, 1, members[tx.origin].shares);\n }\n\n event Deposit(address from, uint value);\n event Withdraw(address from, uint value, uint256 newTotalWithdrawn);\n event TokenWithdraw(address from, uint value, address token, uint amount);\n event AddShare(address who, uint256 addedShares, uint256 newTotalShares);\n event RemoveShare(address who, uint256 removedShares, uint256 newTotalShares);\n event ChangePrivilege(address who, bool oldValue, bool newValue);\n event ChangeContractName(string oldValue, string newValue);\n event ChangeMemberName(address who, string oldValue, string newValue);\n event ChangeSharedExpense(uint256 contractBalance, uint256 oldValue, uint256 newValue);\n event WithdrawSharedExpense(address from, address to, uint value, uint256 newSharedExpenseWithdrawn);\n\n // Fallback function accepts Ether from donators\n function () public payable {\n Deposit(msg.sender, msg.value);\n }\n\n modifier onlyAdmin() { \n if (msg.sender != owner && !members[msg.sender].admin) revert(); \n _;\n }\n\n modifier onlyExisting(address who) { \n if (!members[who].exists) revert(); \n _;\n }\n\n // Series of getter functions for contract data\n function getMemberCount() public constant returns(uint) {\n return memberKeys.length;\n }\n \n function getMemberAtKey(uint key) public constant returns(address) {\n return memberKeys[key];\n }\n \n function getBalance() public constant returns(uint256 balance) {\n return this.balance;\n }\n \n function getContractInfo() public constant returns(string name, address owner, uint256 genesisBlockNumber, uint256 totalShares, uint256 totalWithdrawn) {\n return (string(name), owner, genesisBlockNumber, totalShares, totalWithdrawn);\n }\n \n function returnMember(address _address) public constant onlyExisting(_address) returns(bool admin, uint256 shares, uint256 withdrawn, string memberName) {\n Member memory m = members[_address];\n return (m.admin, m.shares, m.withdrawn, m.memberName);\n }\n\n function checkERC20Balance(address token) public constant returns(uint256) {\n return ERC20(token).balanceOf(address(this));\n }\n\n // Function to add members to the contract \n function addMember(address who, uint256 shares, bool admin, string memberName) public onlyAdmin() {\n // Don't allow the same member to be added twice\n if (members[who].exists) revert();\n if (bytes(memberName).length > 21) revert();\n\n Member memory newMember;\n newMember.exists = true;\n newMember.admin = admin;\n newMember.memberName = memberName;\n\n members[who] = newMember;\n memberKeys.push(who);\n addShare(who, shares);\n }\n\n function updateMember(address who, uint256 shares, bool isAdmin, string name) public onlyAdmin() {\n if (sha3(members[who].memberName) != sha3(name)) changeMemberName(who, name);\n if (members[who].admin != isAdmin) changeAdminPrivilege(who, isAdmin);\n if (members[who].shares != shares) allocateShares(who, shares);\n }\n\n // Only owner, admin or member can change member's name\n function changeMemberName(address who, string newName) public onlyExisting(who) {\n if (msg.sender != who && msg.sender != owner && !members[msg.sender].admin) revert();\n if (bytes(newName).length > 21) revert();\n ChangeMemberName(who, members[who].memberName, newName);\n members[who].memberName = newName;\n }\n\n function changeAdminPrivilege(address who, bool newValue) public onlyAdmin() {\n ChangePrivilege(who, members[who].admin, newValue);\n members[who].admin = newValue; \n }\n\n // Only admins and owners can change the contract name\n function changeContractName(string newName) public onlyAdmin() {\n if (bytes(newName).length > 21) revert();\n ChangeContractName(name, newName);\n name = newName;\n }\n\n // Shared expense allocation allows admins to withdraw an amount to be used for shared\n // expenses. Shared expense allocation subtracts from the total balance of the contract. \n // Only owner can change this amount.\n function changeSharedExpenseAllocation(uint256 newAllocation) public onlyOwner() {\n if (newAllocation < sharedExpenseWithdrawn) revert();\n if (newAllocation.sub(sharedExpenseWithdrawn) > this.balance) revert();\n\n ChangeSharedExpense(this.balance, sharedExpense, newAllocation);\n sharedExpense = newAllocation;\n }\n\n // Set share amount explicitly by calculating difference then adding or removing accordingly\n function allocateShares(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n uint256 currentShares = members[who].shares;\n if (amount == currentShares) revert();\n if (amount > currentShares) {\n addShare(who, amount.sub(currentShares));\n } else {\n removeShare(who, currentShares.sub(amount));\n }\n }\n\n // Increment the number of shares for a member\n function addShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.add(amount);\n members[who].shares = members[who].shares.add(amount);\n AddShare(who, amount, members[who].shares);\n }\n\n // Decrement the number of shares for a member\n function removeShare(address who, uint256 amount) public onlyAdmin() onlyExisting(who) {\n totalShares = totalShares.sub(amount);\n members[who].shares = members[who].shares.sub(amount);\n RemoveShare(who, amount, members[who].shares);\n }\n\n // Function for a member to withdraw Ether from the contract proportional\n // to the amount of shares they have. Calculates the totalWithdrawableAmount\n // in Ether based on the member's share and the Ether balance of the contract,\n // then subtracts the amount of Ether that the member has already previously\n // withdrawn.\n function withdraw(uint256 amount) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableAmount(msg.sender);\n if (amount > newTotal.sub(members[msg.sender].withdrawn)) revert();\n \n members[msg.sender].withdrawn = members[msg.sender].withdrawn.add(amount);\n totalWithdrawn = totalWithdrawn.add(amount);\n msg.sender.transfer(amount);\n Withdraw(msg.sender, amount, totalWithdrawn);\n }\n\n // Withdrawal function for ERC20 tokensx\n function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) {\n uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token);\n if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert();\n\n members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount);\n tokens[token] = tokens[token].add(amount);\n ERC20(token).transfer(msg.sender, amount);\n TokenWithdraw(msg.sender, amount, token, tokens[token]);\n }\n\n // Withdraw from shared expense allocation. Total withdrawable is calculated as \n // sharedExpense minus sharedExpenseWithdrawn. Only Admin can withdraw from shared expense.\n function withdrawSharedExpense(uint256 amount, address to) public onlyAdmin() {\n if (amount > calculateTotalExpenseWithdrawableAmount()) revert();\n \n sharedExpenseWithdrawn = sharedExpenseWithdrawn.add(amount);\n to.transfer(amount);\n WithdrawSharedExpense(msg.sender, to, amount, sharedExpenseWithdrawn);\n }\n\n // Converts from shares to Eth.\n // Ex: 2 shares, 4 total shares, 40 Eth balance\n // 40 Eth / 4 total shares = 10 eth per share * 2 shares = 20 Eth to cash out\n function calculateTotalWithdrawableAmount(address who) public constant onlyExisting(who) returns (uint256) {\n // Total balance to calculate share from = \n // contract balance + totalWithdrawn - sharedExpense + sharedExpenseWithdrawn\n uint256 balanceSum = this.balance.add(totalWithdrawn);\n balanceSum = balanceSum.sub(sharedExpense);\n balanceSum = balanceSum.add(sharedExpenseWithdrawn);\n \n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 ethPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 ethPPN = ethPerSharePPN.mul(members[who].shares);\n uint256 ethVal = ethPPN.div(10**PRECISION); \n return ethVal;\n }\n\n\n function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) {\n uint256 balanceSum = checkERC20Balance(token).add(tokens[token]);\n\n // Need to use parts-per notation to compute percentages for lack of floating point division\n uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); \n uint256 tokPPN = tokPerSharePPN.mul(members[who].shares);\n uint256 tokVal = tokPPN.div(10**PRECISION); \n return tokVal;\n }\n\n function calculateTotalExpenseWithdrawableAmount() public constant returns(uint256) {\n return sharedExpense.sub(sharedExpenseWithdrawn);\n }\n\n // Used for testing\n function delegatePercent(uint256 a, uint256 b, uint256 c) public constant returns (uint256) {\n return a.percent(b, c);\n }\n}\n\n/**\n * @title ERC20Basic\n * @dev Simpler version of ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/179\n */\ncontract ERC20Basic {\n uint256 public totalSupply;\n function balanceOf(address who) public constant returns (uint256);\n function transfer(address to, uint256 value) public returns (bool);\n event Transfer(address indexed from, address indexed to, uint256 value);\n}\n\n\n/**\n * @title ERC20 interface\n * @dev see https://github.com/ethereum/EIPs/issues/20\n */\ncontract ERC20 is ERC20Basic {\n function allowance(address owner, address spender) public constant returns (uint256);\n function transferFrom(address from, address to, uint256 value) public returns (bool);\n function approve(address spender, uint256 value) public returns (bool);\n event Approval(address indexed owner, address indexed spender, uint256 value);\n}\n\n\n/**\n * @title SafeMath\n * @dev Math operations with safety checks that throw on error\n */\nlibrary SafeMath {\n function mul(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a * b;\n assert(a == 0 || c / a == b);\n return c;\n }\n\n function div(uint256 a, uint256 b) internal constant returns (uint256) {\n // assert(b > 0); // Solidity automatically throws when dividing by 0\n uint256 c = a / b;\n // assert(a == b * c + a % b); // There is no case in which this doesn't hold\n return c;\n }\n\n function sub(uint256 a, uint256 b) internal constant returns (uint256) {\n assert(b <= a);\n return a - b;\n }\n\n function add(uint256 a, uint256 b) internal constant returns (uint256) {\n uint256 c = a + b;\n assert(c >= a);\n return c;\n }\n\n // Using from SO: https://stackoverflow.com/questions/42738640/division-in-ethereum-solidity/42739843#42739843\n // Adapted to use SafeMath and uint256.\n function percent(uint256 numerator, uint256 denominator, uint256 precision) internal constant returns(uint256 quotient) {\n // caution, check safe-to-multiply here\n uint256 _numerator = mul(numerator, 10 ** (precision+1));\n // with rounding of last digit\n uint256 _quotient = (div(_numerator, denominator) + 5) / 10;\n return (_quotient);\n }\n}\n\n", "sourcePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "ast": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "exportedSymbols": { "Doneth": [ - 1194 + 1146 ], "ERC20": [ - 1261 + 1213 ], "ERC20Basic": [ - 1221 - ], - "Ownable": [ - 48 + 1173 ], "SafeMath": [ - 1393 + 1345 ] }, - "id": 1394, + "id": 1346, "nodeType": "SourceUnit", "nodes": [ { @@ -47,20 +44,20 @@ "contractKind": "contract", "documentation": "@title Doneth (Doneth)\n@dev Doneth is a contract that allows shared access to funds\nin the form of Ether and ERC20 tokens. It is especially relevant\nto donation based projects. The admins of the contract determine \nwho is a member, and each member gets a number of shares. The \nnumber of shares each member has determines how much Ether/ERC20 \nthe member can withdraw from the contract.", "fullyImplemented": true, - "id": 48, + "id": 1146, "linearizedBaseContracts": [ - 48 + 1146 ], - "name": "Ownable", + "name": "Doneth", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 3, - "name": "owner", + "name": "implementation", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "640:20:0", + "scope": 1146, + "src": "467:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -71,7 +68,33 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "640:7:0", + "src": "467:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1146, + "src": "557:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -82,26 +105,26 @@ }, { "body": { - "id": 11, + "id": 13, "nodeType": "Block", - "src": "693:34:0", + "src": "610:34:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 9, + "id": 11, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 6, + "id": 8, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "703:5:0", + "referencedDeclaration": 5, + "src": "620:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -113,18 +136,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 7, + "id": 9, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "711:2:0", + "referencedDeclaration": 1512, + "src": "628:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 8, + "id": 10, "isConstant": false, "isLValue": false, "isPure": false, @@ -132,56 +155,56 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "711:9:0", + "src": "628:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "703:17:0", + "src": "620:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 10, + "id": 12, "nodeType": "ExpressionStatement", - "src": "703:17:0" + "src": "620:17:0" } ] }, "documentation": null, - "id": 12, + "id": 14, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 4, + "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "683:2:0" + "src": "600:2:0" }, "payable": false, "returnParameters": { - "id": 5, + "id": 7, "nodeType": "ParameterList", "parameters": [], - "src": "693:0:0" + "src": "610:0:0" }, - "scope": 48, - "src": "667:60:0", + "scope": 1146, + "src": "584:60:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 27, + "id": 29, "nodeType": "Block", - "src": "754:78:0", + "src": "671:78:0", "statements": [ { "expression": { @@ -193,7 +216,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 23, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -204,7 +227,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18, + "id": 20, "isConstant": false, "isLValue": false, "isPure": false, @@ -213,18 +236,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 15, + "id": 17, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "772:3:0", + "referencedDeclaration": 1500, + "src": "689:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 16, + "id": 18, "isConstant": false, "isLValue": false, "isPure": false, @@ -232,7 +255,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "772:10:0", + "src": "689:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -242,18 +265,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 17, + "id": 19, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "786:5:0", + "referencedDeclaration": 5, + "src": "703:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "772:19:0", + "src": "689:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -267,7 +290,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 22, + "id": 24, "isConstant": false, "isLValue": false, "isPure": false, @@ -276,18 +299,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 19, + "id": 21, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "795:2:0", + "referencedDeclaration": 1512, + "src": "712:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 20, + "id": 22, "isConstant": false, "isLValue": false, "isPure": false, @@ -295,7 +318,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "795:9:0", + "src": "712:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -305,24 +328,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 21, + "id": 23, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "808:5:0", + "referencedDeclaration": 5, + "src": "725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "795:18:0", + "src": "712:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "772:41:0", + "src": "689:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -336,21 +359,21 @@ "typeString": "bool" } ], - "id": 14, + "id": 16, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1514, - "src": "764:7:0", + "referencedDeclaration": 1503, + "src": "681:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 24, + "id": 26, "isConstant": false, "isLValue": false, "isPure": false, @@ -358,41 +381,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "764:50:0", + "src": "681:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25, + "id": 27, "nodeType": "ExpressionStatement", - "src": "764:50:0" + "src": "681:50:0" }, { - "id": 26, + "id": 28, "nodeType": "PlaceholderStatement", - "src": "824:1:0" + "src": "741:1:0" } ] }, "documentation": null, - "id": 28, + "id": 30, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 13, + "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "751:2:0" + "src": "668:2:0" }, - "src": "733:99:0", + "src": "650:99:0", "visibility": "internal" }, { "body": { - "id": 46, + "id": 48, "nodeType": "Block", - "src": "900:85:0", + "src": "817:85:0", "statements": [ { "condition": { @@ -401,19 +424,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 39, + "id": 41, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 35, + "id": 37, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "914:8:0", + "referencedDeclaration": 32, + "src": "831:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -427,14 +450,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 37, + "id": 39, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "934:1:0", + "src": "851:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -450,20 +473,20 @@ "typeString": "int_const 0" } ], - "id": 36, + "id": 38, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "926:7:0", + "src": "843:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 38, + "id": 40, "isConstant": false, "isLValue": false, "isPure": true, @@ -471,43 +494,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "926:10:0", + "src": "843:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "914:22:0", + "src": "831:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 45, + "id": 47, "nodeType": "IfStatement", - "src": "910:69:0", + "src": "827:69:0", "trueBody": { - "id": 44, + "id": 46, "nodeType": "Block", - "src": "938:41:0", + "src": "855:41:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 42, + "id": 44, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 40, + "id": 42, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "952:5:0", + "referencedDeclaration": 5, + "src": "869:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -517,26 +540,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 41, + "id": 43, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "960:8:0", + "referencedDeclaration": 32, + "src": "877:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "952:16:0", + "src": "869:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 43, + "id": 45, "nodeType": "ExpressionStatement", - "src": "952:16:0" + "src": "869:16:0" } ] } @@ -544,44 +567,44 @@ ] }, "documentation": null, - "id": 47, + "id": 49, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 33, + "id": 35, "modifierName": { "argumentTypes": null, - "id": 32, + "id": 34, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "883:9:0", + "referencedDeclaration": 30, + "src": "800:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "883:9:0" + "src": "800:9:0" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 31, + "id": 33, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30, + "id": 32, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 47, - "src": "865:16:0", + "scope": 49, + "src": "782:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -589,10 +612,10 @@ "typeString": "address" }, "typeName": { - "id": 29, + "id": 31, "name": "address", "nodeType": "ElementaryTypeName", - "src": "865:7:0", + "src": "782:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -602,81 +625,42 @@ "visibility": "internal" } ], - "src": "864:18:0" + "src": "781:18:0" }, "payable": false, "returnParameters": { - "id": 34, + "id": 36, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:0" + "src": "817:0:0" }, - "scope": 48, - "src": "838:147:0", + "scope": 1146, + "src": "755:147:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" - } - ], - "scope": 1394, - "src": "617:370:0" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 49, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "1008:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$48", - "typeString": "contract Ownable" - } - }, - "id": 50, - "nodeType": "InheritanceSpecifier", - "src": "1008:7:0" - } - ], - "contractDependencies": [ - 48 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1194, - "linearizedBaseContracts": [ - 1194, - 48 - ], - "name": "Doneth", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "id": 53, + "id": 52, "libraryName": { "contractScope": null, - "id": 51, + "id": 50, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1393, - "src": "1028:8:0", + "referencedDeclaration": 1345, + "src": "914:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$1393", + "typeIdentifier": "t_contract$_SafeMath_$1345", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1022:27:0", + "src": "908:27:0", "typeName": { - "id": 52, + "id": 51, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1041:7:0", + "src": "927:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -685,11 +669,11 @@ }, { "constant": false, - "id": 55, + "id": 54, "name": "initialized", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1057:23:0", + "scope": 1146, + "src": "943:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -697,10 +681,10 @@ "typeString": "bool" }, "typeName": { - "id": 54, + "id": 53, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1057:4:0", + "src": "943:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -711,11 +695,11 @@ }, { "constant": false, - "id": 57, + "id": 56, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1115:18:0", + "scope": 1146, + "src": "1001:18:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -723,10 +707,10 @@ "typeString": "string" }, "typeName": { - "id": 56, + "id": 55, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1115:6:0", + "src": "1001:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -737,11 +721,11 @@ }, { "constant": false, - "id": 59, + "id": 58, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1186:26:0", + "scope": 1146, + "src": "1072:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -749,10 +733,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 57, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1186:7:0", + "src": "1072:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -763,11 +747,11 @@ }, { "constant": false, - "id": 61, + "id": 60, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1265:29:0", + "scope": 1146, + "src": "1151:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -775,10 +759,10 @@ "typeString": "uint256" }, "typeName": { - "id": 60, + "id": 59, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1265:7:0", + "src": "1151:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -789,11 +773,11 @@ }, { "constant": false, - "id": 63, + "id": 62, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1354:33:0", + "scope": 1146, + "src": "1240:33:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -801,10 +785,10 @@ "typeString": "uint256" }, "typeName": { - "id": 62, + "id": 61, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1354:7:0", + "src": "1240:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -815,11 +799,11 @@ }, { "constant": true, - "id": 66, + "id": 65, "name": "PRECISION", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1454:38:0", + "scope": 1146, + "src": "1340:38:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -827,10 +811,10 @@ "typeString": "uint256" }, "typeName": { - "id": 64, + "id": 63, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1454:7:0", + "src": "1340:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -839,14 +823,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 65, + "id": 64, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1490:2:0", + "src": "1376:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -858,11 +842,11 @@ }, { "constant": false, - "id": 68, + "id": 67, "name": "sharedExpense", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1546:28:0", + "scope": 1146, + "src": "1432:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -870,10 +854,10 @@ "typeString": "uint256" }, "typeName": { - "id": 67, + "id": 66, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1546:7:0", + "src": "1432:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -884,11 +868,11 @@ }, { "constant": false, - "id": 70, + "id": 69, "name": "sharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1580:37:0", + "scope": 1146, + "src": "1466:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -896,10 +880,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 68, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1580:7:0", + "src": "1466:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -910,44 +894,44 @@ }, { "constant": false, - "id": 74, + "id": 73, "name": "members", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1661:41:0", + "scope": 1146, + "src": "1547:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "typeName": { - "id": 73, + "id": 72, "keyType": { - "id": 71, + "id": 70, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1669:7:0", + "src": "1555:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1661:26:0", + "src": "1547:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "valueType": { "contractScope": null, - "id": 72, + "id": 71, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "1680:6:0", + "referencedDeclaration": 91, + "src": "1566:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } } @@ -957,11 +941,11 @@ }, { "constant": false, - "id": 77, + "id": 76, "name": "memberKeys", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1708:27:0", + "scope": 1146, + "src": "1594:27:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -970,19 +954,19 @@ }, "typeName": { "baseType": { - "id": 75, + "id": 74, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1708:7:0", + "src": "1594:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 76, + "id": 75, "length": null, "nodeType": "ArrayTypeName", - "src": "1708:9:0", + "src": "1594:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -993,15 +977,15 @@ }, { "canonicalName": "Doneth.Member", - "id": 92, + "id": 91, "members": [ { "constant": false, - "id": 79, + "id": 78, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1765:11:0", + "scope": 91, + "src": "1651:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1009,10 +993,10 @@ "typeString": "bool" }, "typeName": { - "id": 78, + "id": 77, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1765:4:0", + "src": "1651:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1023,11 +1007,11 @@ }, { "constant": false, - "id": 81, + "id": 80, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1786:10:0", + "scope": 91, + "src": "1672:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1035,10 +1019,10 @@ "typeString": "bool" }, "typeName": { - "id": 80, + "id": 79, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1786:4:0", + "src": "1672:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1049,11 +1033,11 @@ }, { "constant": false, - "id": 83, + "id": 82, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1806:14:0", + "scope": 91, + "src": "1692:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1061,10 +1045,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 81, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1806:7:0", + "src": "1692:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1075,11 +1059,11 @@ }, { "constant": false, - "id": 85, + "id": 84, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1830:17:0", + "scope": 91, + "src": "1716:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1087,10 +1071,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 83, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1830:7:0", + "src": "1716:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1101,11 +1085,11 @@ }, { "constant": false, - "id": 87, + "id": 86, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1857:17:0", + "scope": 91, + "src": "1743:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1113,10 +1097,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 85, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1857:6:0", + "src": "1743:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -1127,11 +1111,11 @@ }, { "constant": false, - "id": 91, + "id": 90, "name": "tokensWithdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1884:43:0", + "scope": 91, + "src": "1770:43:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -1139,28 +1123,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 90, + "id": 89, "keyType": { - "id": 88, + "id": 87, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1892:7:0", + "src": "1778:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1884:27:0", + "src": "1770:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 89, + "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1903:7:0", + "src": "1789:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1173,161 +1157,60 @@ ], "name": "Member", "nodeType": "StructDefinition", - "scope": 1194, - "src": "1741:193:0", + "scope": 1146, + "src": "1627:193:0", "visibility": "public" }, { "constant": false, - "id": 96, + "id": 95, "name": "tokens", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2010:39:0", + "scope": 1146, + "src": "1896:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 95, + "id": 94, "keyType": { - "id": 93, + "id": 92, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:7:0", + "src": "1904:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2010:25:0", + "src": "1896:27:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "valueType": { - "contractScope": null, - "id": 94, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 104, - "src": "2029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage_ptr", - "typeString": "struct Doneth.Token" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "tokenKeys", - "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2055:26:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", + "id": 93, + "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2055:7:0", + "src": "1915:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2055:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" } }, "value": null, "visibility": "public" }, - { - "canonicalName": "Doneth.Token", - "id": 104, - "members": [ - { - "constant": false, - "id": 101, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2110:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 100, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2110:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "name": "totalWithdrawn", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2131:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 102, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2131:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Token", - "nodeType": "StructDefinition", - "scope": 1194, - "src": "2087:73:0", - "visibility": "public" - }, { "body": { - "id": 223, + "id": 179, "nodeType": "Block", - "src": "2363:911:0", + "src": "1967:484:0", "statements": [ { "expression": { @@ -1335,7 +1218,7 @@ "arguments": [ { "argumentTypes": null, - "id": 113, + "id": 100, "isConstant": false, "isLValue": false, "isPure": false, @@ -1343,15 +1226,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2381:12:0", + "src": "1985:12:0", "subExpression": { "argumentTypes": null, - "id": 112, + "id": 99, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2382:11:0", + "referencedDeclaration": 54, + "src": "1986:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1361,24 +1244,6 @@ "typeIdentifier": "t_bool", "typeString": "bool" } - }, - { - "argumentTypes": null, - "hexValue": "414c524541445920494e495449414c495a4544", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2395:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" - }, - "value": "ALREADY INITIALIZED" } ], "expression": { @@ -1386,27 +1251,23 @@ { "typeIdentifier": "t_bool", "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" } ], - "id": 111, + "id": 98, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1515, - "src": "2373:7:0", + "referencedDeclaration": 1503, + "src": "1977:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 115, + "id": 101, "isConstant": false, "isLValue": false, "isPure": false, @@ -1414,32 +1275,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2373:44:0", + "src": "1977:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 116, + "id": 102, "nodeType": "ExpressionStatement", - "src": "2373:44:0" + "src": "1977:21:0" }, { "expression": { "argumentTypes": null, - "id": 119, + "id": 105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 117, + "id": 103, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2427:11:0", + "referencedDeclaration": 54, + "src": "2008:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -1450,14 +1311,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 118, + "id": 104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2441:4:0", + "src": "2022:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -1465,32 +1326,32 @@ }, "value": "true" }, - "src": "2427:18:0", + "src": "2008:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 120, + "id": 106, "nodeType": "ExpressionStatement", - "src": "2427:18:0" + "src": "2008:18:0" }, { "expression": { "argumentTypes": null, - "id": 124, + "id": 110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 121, + "id": 107, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "2455:5:0", + "referencedDeclaration": 5, + "src": "2037:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -1502,18 +1363,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 122, + "id": 108, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2463:2:0", + "referencedDeclaration": 1512, + "src": "2045:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 123, + "id": 109, "isConstant": false, "isLValue": false, "isPure": false, @@ -1521,38 +1382,38 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2463:9:0", + "src": "2045:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2455:17:0", + "src": "2037:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 125, + "id": 111, "nodeType": "ExpressionStatement", - "src": "2455:17:0" + "src": "2037:17:0" }, { "expression": { "argumentTypes": null, - "id": 129, + "id": 115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 126, + "id": 112, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "2482:18:0", + "referencedDeclaration": 62, + "src": "2064:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -1564,18 +1425,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 127, + "id": 113, "name": "block", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1501, - "src": "2503:5:0", + "referencedDeclaration": 1490, + "src": "2085:5:0", "typeDescriptions": { "typeIdentifier": "t_magic_block", "typeString": "block" } }, - "id": 128, + "id": 114, "isConstant": false, "isLValue": false, "isPure": false, @@ -1583,405 +1444,130 @@ "memberName": "number", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2503:12:0", + "src": "2085:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2482:33:0", + "src": "2064:33:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 130, + "id": 116, "nodeType": "ExpressionStatement", - "src": "2482:33:0" + "src": "2064:33:0" }, { - "condition": { + "assignments": [], + "declarations": [ + { + "constant": false, + "id": 118, + "name": "newMember", + "nodeType": "VariableDeclaration", + "scope": 180, + "src": "2108:23:0", + "stateVariable": false, + "storageLocation": "memory", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member" + }, + "typeName": { + "contractScope": null, + "id": 117, + "name": "Member", + "nodeType": "UserDefinedTypeName", + "referencedDeclaration": 91, + "src": "2108:6:0", + "typeDescriptions": { + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", + "typeString": "struct Doneth.Member" + } + }, + "value": null, + "visibility": "internal" + } + ], + "id": 119, + "initialValue": null, + "nodeType": "VariableDeclarationStatement", + "src": "2108:23:0" + }, + { + "expression": { "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 136, + "id": 124, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, - "leftExpression": { + "leftHandSide": { "argumentTypes": null, "expression": { "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 132, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2535:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2529:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2529:20:0", + "id": 120, + "name": "newMember", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 118, + "src": "2141:9:0", "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2529:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2559:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2529:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 140, - "nodeType": "IfStatement", - "src": "2525:46:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 137, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2563:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2563:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2563:8:0" - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 142, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2591:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 141, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2585:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2585:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", + "typeString": "struct Doneth.Member memory" } }, - "id": 144, + "id": 122, "isConstant": false, - "isLValue": false, + "isLValue": true, "isPure": false, - "lValueRequested": false, - "memberName": "length", + "lValueRequested": true, + "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2585:26:0", + "referencedDeclaration": 78, + "src": "2141:16:0", "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" + "typeIdentifier": "t_bool", + "typeString": "bool" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { + "nodeType": "Assignment", + "operator": "=", + "rightHandSide": { "argumentTypes": null, - "hexValue": "3231", - "id": 145, + "hexValue": "74727565", + "id": 123, "isConstant": false, "isLValue": false, "isPure": true, - "kind": "number", + "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2614:2:0", + "src": "2160:4:0", "subdenomination": null, "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" + "typeIdentifier": "t_bool", + "typeString": "bool" }, - "value": "21" + "value": "true" }, - "src": "2585:31:0", + "src": "2141:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "falseBody": null, - "id": 150, - "nodeType": "IfStatement", - "src": "2581:45:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 147, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2618:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2618:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:8:0" - } - }, - { - "expression": { - "argumentTypes": null, - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 151, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "2636:4:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 152, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2643:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2636:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, - "id": 154, + "id": 125, "nodeType": "ExpressionStatement", - "src": "2636:20:0" - }, - { - "assignments": [], - "declarations": [ - { - "constant": false, - "id": 156, - "name": "newMember", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2721:23:0", - "stateVariable": false, - "storageLocation": "memory", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member" - }, - "typeName": { - "contractScope": null, - "id": 155, - "name": "Member", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "2721:6:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", - "typeString": "struct Doneth.Member" - } - }, - "value": null, - "visibility": "internal" - } - ], - "id": 157, - "initialValue": null, - "nodeType": "VariableDeclarationStatement", - "src": "2721:23:0" + "src": "2141:23:0" }, { "expression": { "argumentTypes": null, - "id": 162, + "id": 130, "isConstant": false, "isLValue": false, "isPure": false, @@ -1990,26 +1576,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 158, + "id": 126, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2754:9:0", + "referencedDeclaration": 118, + "src": "2174:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 160, + "id": 128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "exists", + "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "2754:16:0", + "referencedDeclaration": 80, + "src": "2174:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -2020,14 +1606,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 161, + "id": 129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2773:4:0", + "src": "2192:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -2035,185 +1621,56 @@ }, "value": "true" }, - "src": "2754:23:0", + "src": "2174:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 163, + "id": 131, "nodeType": "ExpressionStatement", - "src": "2754:23:0" + "src": "2174:22:0" }, { "expression": { "argumentTypes": null, - "id": 168, + "id": 137, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "id": 164, - "name": "newMember", + "id": 132, + "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2787:9:0", + "referencedDeclaration": 73, + "src": "2206:7:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", + "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 166, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "admin", - "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "2787:15:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "hexValue": "74727565", - "id": 167, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "bool", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2805:4:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "value": "true" - }, - "src": "2787:22:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "2787:22:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 170, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2819:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 172, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "memberName", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "2819:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 173, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2842:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2819:35:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 175, - "nodeType": "ExpressionStatement", - "src": "2819:35:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 181, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 176, - "name": "members", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "2865:7:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", - "typeString": "mapping(address => struct Doneth.Member storage ref)" - } - }, - "id": 179, + "id": 135, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 177, + "id": 133, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2873:2:0", + "referencedDeclaration": 1512, + "src": "2214:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 178, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -2221,7 +1678,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2873:9:0", + "src": "2214:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2232,9 +1689,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2865:18:0", + "src": "2206:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -2242,26 +1699,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 180, + "id": 136, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2886:9:0", + "referencedDeclaration": 118, + "src": "2227:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "2865:30:0", + "src": "2206:30:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 182, + "id": 138, "nodeType": "ExpressionStatement", - "src": "2865:30:0" + "src": "2206:30:0" }, { "expression": { @@ -2271,18 +1728,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 186, + "id": 142, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2921:2:0", + "referencedDeclaration": 1512, + "src": "2262:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 187, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -2290,7 +1747,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2921:9:0", + "src": "2262:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2306,18 +1763,18 @@ ], "expression": { "argumentTypes": null, - "id": 183, + "id": 139, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "2905:10:0", + "referencedDeclaration": 76, + "src": "2246:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 185, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -2325,13 +1782,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2905:15:0", + "src": "2246:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 188, + "id": 144, "isConstant": false, "isLValue": false, "isPure": false, @@ -2339,32 +1796,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2905:26:0", + "src": "2246:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 189, + "id": 145, "nodeType": "ExpressionStatement", - "src": "2905:26:0" + "src": "2246:26:0" }, { "expression": { "argumentTypes": null, - "id": 195, + "id": 151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 190, + "id": 146, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2981:11:0", + "referencedDeclaration": 58, + "src": "2283:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2378,14 +1835,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 193, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3011:1:0", + "src": "2313:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2403,32 +1860,32 @@ ], "expression": { "argumentTypes": null, - "id": 191, + "id": 147, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2995:11:0", + "referencedDeclaration": 58, + "src": "2297:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 192, + "id": 148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "2995:15:0", + "referencedDeclaration": 1305, + "src": "2297:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 194, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, @@ -2436,26 +1893,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2995:18:0", + "src": "2297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2981:32:0", + "src": "2283:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 196, + "id": 152, "nodeType": "ExpressionStatement", - "src": "2981:32:0" + "src": "2283:32:0" }, { "expression": { "argumentTypes": null, - "id": 210, + "id": 166, "isConstant": false, "isLValue": false, "isPure": false, @@ -2466,34 +1923,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 197, + "id": 153, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3023:7:0", + "referencedDeclaration": 73, + "src": "2325:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 200, + "id": 156, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 198, + "id": 154, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3031:2:0", + "referencedDeclaration": 1512, + "src": "2333:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 199, + "id": 155, "isConstant": false, "isLValue": false, "isPure": false, @@ -2501,7 +1958,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3031:9:0", + "src": "2333:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2512,21 +1969,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3023:18:0", + "src": "2325:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 201, + "id": 157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3023:25:0", + "referencedDeclaration": 82, + "src": "2325:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2540,14 +1997,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 208, + "id": 164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3081:1:0", + "src": "2383:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2569,34 +2026,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 202, + "id": 158, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3051:7:0", + "referencedDeclaration": 73, + "src": "2353:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 205, + "id": 161, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 203, + "id": 159, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3059:2:0", + "referencedDeclaration": 1512, + "src": "2361:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 204, + "id": 160, "isConstant": false, "isLValue": false, "isPure": false, @@ -2604,7 +2061,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3059:9:0", + "src": "2361:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2615,41 +2072,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3051:18:0", + "src": "2353:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 206, + "id": 162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3051:25:0", + "referencedDeclaration": 82, + "src": "2353:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 207, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "3051:29:0", + "referencedDeclaration": 1305, + "src": "2353:29:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 209, + "id": 165, "isConstant": false, "isLValue": false, "isPure": false, @@ -2657,21 +2114,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3051:32:0", + "src": "2353:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3023:60:0", + "src": "2325:60:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 211, + "id": 167, "nodeType": "ExpressionStatement", - "src": "3023:60:0" + "src": "2325:60:0" }, { "expression": { @@ -2681,18 +2138,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 213, + "id": 169, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3102:2:0", + "referencedDeclaration": 1512, + "src": "2404:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 214, + "id": 170, "isConstant": false, "isLValue": false, "isPure": false, @@ -2700,7 +2157,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3102:9:0", + "src": "2404:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2709,14 +2166,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 215, + "id": 171, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3113:1:0", + "src": "2415:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -2730,34 +2187,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 216, + "id": 172, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3116:7:0", + "referencedDeclaration": 73, + "src": "2418:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 219, + "id": 175, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 217, + "id": 173, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3124:2:0", + "referencedDeclaration": 1512, + "src": "2426:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 218, + "id": 174, "isConstant": false, "isLValue": false, "isPure": false, @@ -2765,7 +2222,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3124:9:0", + "src": "2426:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2776,21 +2233,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3116:18:0", + "src": "2418:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 220, + "id": 176, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3116:25:0", + "referencedDeclaration": 82, + "src": "2418:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2812,18 +2269,18 @@ "typeString": "uint256" } ], - "id": 212, + "id": 168, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "3093:8:0", + "referencedDeclaration": 212, + "src": "2395:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 221, + "id": 177, "isConstant": false, "isLValue": false, "isPure": false, @@ -2831,20 +2288,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3093:49:0", + "src": "2395:49:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 222, + "id": 178, "nodeType": "ExpressionStatement", - "src": "3093:49:0" + "src": "2395:49:0" } ] }, "documentation": null, - "id": 224, + "id": 180, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -2852,73 +2309,20 @@ "name": "init", "nodeType": "FunctionDefinition", "parameters": { - "id": 109, + "id": 96, "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 106, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2313:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 105, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2313:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 108, - "name": "_founderName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2335:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 107, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2335:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2312:43:0" + "parameters": [], + "src": "1957:2:0" }, "payable": false, "returnParameters": { - "id": 110, + "id": 97, "nodeType": "ParameterList", "parameters": [], - "src": "2363:0:0" + "src": "1967:0:0" }, - "scope": 1194, - "src": "2299:975:0", + "scope": 1146, + "src": "1944:507:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -2926,21 +2330,21 @@ { "anonymous": false, "documentation": null, - "id": 230, + "id": 186, "name": "Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 229, + "id": 185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 226, + "id": 182, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3294:12:0", + "scope": 186, + "src": "2471:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2948,10 +2352,10 @@ "typeString": "address" }, "typeName": { - "id": 225, + "id": 181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:0", + "src": "2471:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -2962,12 +2366,12 @@ }, { "constant": false, - "id": 228, + "id": 184, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3308:10:0", + "scope": 186, + "src": "2485:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -2975,10 +2379,10 @@ "typeString": "uint256" }, "typeName": { - "id": 227, + "id": 183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3308:4:0", + "src": "2485:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -2988,28 +2392,28 @@ "visibility": "internal" } ], - "src": "3293:26:0" + "src": "2470:26:0" }, - "src": "3280:40:0" + "src": "2457:40:0" }, { "anonymous": false, "documentation": null, - "id": 238, + "id": 194, "name": "Withdraw", "nodeType": "EventDefinition", "parameters": { - "id": 237, + "id": 193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 232, + "id": 188, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3340:12:0", + "scope": 194, + "src": "2517:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3017,10 +2421,10 @@ "typeString": "address" }, "typeName": { - "id": 231, + "id": 187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3340:7:0", + "src": "2517:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3031,12 +2435,12 @@ }, { "constant": false, - "id": 234, + "id": 190, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3354:10:0", + "scope": 194, + "src": "2531:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3044,10 +2448,10 @@ "typeString": "uint256" }, "typeName": { - "id": 233, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3354:4:0", + "src": "2531:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3058,12 +2462,12 @@ }, { "constant": false, - "id": 236, + "id": 192, "indexed": false, "name": "newTotalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3366:25:0", + "scope": 194, + "src": "2543:25:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3071,10 +2475,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 191, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3366:7:0", + "src": "2543:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3084,28 +2488,28 @@ "visibility": "internal" } ], - "src": "3339:53:0" + "src": "2516:53:0" }, - "src": "3325:68:0" + "src": "2502:68:0" }, { "anonymous": false, "documentation": null, - "id": 248, + "id": 204, "name": "TokenWithdraw", "nodeType": "EventDefinition", "parameters": { - "id": 247, + "id": 203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 196, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3418:12:0", + "scope": 204, + "src": "2595:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3113,10 +2517,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 195, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3418:7:0", + "src": "2595:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3127,12 +2531,12 @@ }, { "constant": false, - "id": 242, + "id": 198, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3432:10:0", + "scope": 204, + "src": "2609:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3140,10 +2544,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 197, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3432:4:0", + "src": "2609:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3154,12 +2558,12 @@ }, { "constant": false, - "id": 244, + "id": 200, "indexed": false, "name": "token", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3444:13:0", + "scope": 204, + "src": "2621:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3167,10 +2571,10 @@ "typeString": "address" }, "typeName": { - "id": 243, + "id": 199, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3444:7:0", + "src": "2621:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3181,12 +2585,12 @@ }, { "constant": false, - "id": 246, + "id": 202, "indexed": false, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3459:11:0", + "scope": 204, + "src": "2636:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3194,10 +2598,10 @@ "typeString": "uint256" }, "typeName": { - "id": 245, + "id": 201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3459:4:0", + "src": "2636:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3207,28 +2611,28 @@ "visibility": "internal" } ], - "src": "3417:54:0" + "src": "2594:54:0" }, - "src": "3398:74:0" + "src": "2575:74:0" }, { "anonymous": false, "documentation": null, - "id": 256, + "id": 212, "name": "AddShare", "nodeType": "EventDefinition", "parameters": { - "id": 255, + "id": 211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 250, + "id": 206, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3492:11:0", + "scope": 212, + "src": "2669:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3236,10 +2640,10 @@ "typeString": "address" }, "typeName": { - "id": 249, + "id": 205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "2669:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3250,12 +2654,12 @@ }, { "constant": false, - "id": 252, + "id": 208, "indexed": false, "name": "addedShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3505:19:0", + "scope": 212, + "src": "2682:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3263,10 +2667,10 @@ "typeString": "uint256" }, "typeName": { - "id": 251, + "id": 207, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3505:7:0", + "src": "2682:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3277,12 +2681,12 @@ }, { "constant": false, - "id": 254, + "id": 210, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3526:22:0", + "scope": 212, + "src": "2703:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3290,10 +2694,10 @@ "typeString": "uint256" }, "typeName": { - "id": 253, + "id": 209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3526:7:0", + "src": "2703:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3303,28 +2707,28 @@ "visibility": "internal" } ], - "src": "3491:58:0" + "src": "2668:58:0" }, - "src": "3477:73:0" + "src": "2654:73:0" }, { "anonymous": false, "documentation": null, - "id": 264, + "id": 220, "name": "RemoveShare", "nodeType": "EventDefinition", "parameters": { - "id": 263, + "id": 219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 258, + "id": 214, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3573:11:0", + "scope": 220, + "src": "2750:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3332,10 +2736,10 @@ "typeString": "address" }, "typeName": { - "id": 257, + "id": 213, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3573:7:0", + "src": "2750:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3346,12 +2750,12 @@ }, { "constant": false, - "id": 260, + "id": 216, "indexed": false, "name": "removedShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3586:21:0", + "scope": 220, + "src": "2763:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3359,10 +2763,10 @@ "typeString": "uint256" }, "typeName": { - "id": 259, + "id": 215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "2763:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3373,12 +2777,12 @@ }, { "constant": false, - "id": 262, + "id": 218, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3609:22:0", + "scope": 220, + "src": "2786:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3386,10 +2790,10 @@ "typeString": "uint256" }, "typeName": { - "id": 261, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3609:7:0", + "src": "2786:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3399,28 +2803,28 @@ "visibility": "internal" } ], - "src": "3572:60:0" + "src": "2749:60:0" }, - "src": "3555:78:0" + "src": "2732:78:0" }, { "anonymous": false, "documentation": null, - "id": 272, + "id": 228, "name": "ChangePrivilege", "nodeType": "EventDefinition", "parameters": { - "id": 271, + "id": 227, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 266, + "id": 222, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3660:11:0", + "scope": 228, + "src": "2837:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3428,10 +2832,10 @@ "typeString": "address" }, "typeName": { - "id": 265, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3660:7:0", + "src": "2837:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3442,12 +2846,12 @@ }, { "constant": false, - "id": 268, + "id": 224, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3673:13:0", + "scope": 228, + "src": "2850:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3455,10 +2859,10 @@ "typeString": "bool" }, "typeName": { - "id": 267, + "id": 223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3673:4:0", + "src": "2850:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3469,12 +2873,12 @@ }, { "constant": false, - "id": 270, + "id": 226, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3688:13:0", + "scope": 228, + "src": "2865:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3482,10 +2886,10 @@ "typeString": "bool" }, "typeName": { - "id": 269, + "id": 225, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3688:4:0", + "src": "2865:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -3495,28 +2899,28 @@ "visibility": "internal" } ], - "src": "3659:43:0" + "src": "2836:43:0" }, - "src": "3638:65:0" + "src": "2815:65:0" }, { "anonymous": false, "documentation": null, - "id": 278, + "id": 234, "name": "ChangeContractName", "nodeType": "EventDefinition", "parameters": { - "id": 277, + "id": 233, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 274, + "id": 230, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3733:15:0", + "scope": 234, + "src": "2910:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3524,10 +2928,10 @@ "typeString": "string" }, "typeName": { - "id": 273, + "id": 229, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3733:6:0", + "src": "2910:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3538,12 +2942,12 @@ }, { "constant": false, - "id": 276, + "id": 232, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3750:15:0", + "scope": 234, + "src": "2927:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3551,10 +2955,10 @@ "typeString": "string" }, "typeName": { - "id": 275, + "id": 231, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3750:6:0", + "src": "2927:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3564,28 +2968,28 @@ "visibility": "internal" } ], - "src": "3732:34:0" + "src": "2909:34:0" }, - "src": "3708:59:0" + "src": "2885:59:0" }, { "anonymous": false, "documentation": null, - "id": 286, + "id": 242, "name": "ChangeMemberName", "nodeType": "EventDefinition", "parameters": { - "id": 285, + "id": 241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 280, + "id": 236, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3795:11:0", + "scope": 242, + "src": "2972:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3593,10 +2997,10 @@ "typeString": "address" }, "typeName": { - "id": 279, + "id": 235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3795:7:0", + "src": "2972:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3607,12 +3011,12 @@ }, { "constant": false, - "id": 282, + "id": 238, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3808:15:0", + "scope": 242, + "src": "2985:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3620,10 +3024,10 @@ "typeString": "string" }, "typeName": { - "id": 281, + "id": 237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3808:6:0", + "src": "2985:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3634,12 +3038,12 @@ }, { "constant": false, - "id": 284, + "id": 240, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3825:15:0", + "scope": 242, + "src": "3002:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3647,10 +3051,10 @@ "typeString": "string" }, "typeName": { - "id": 283, + "id": 239, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3825:6:0", + "src": "3002:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -3660,28 +3064,28 @@ "visibility": "internal" } ], - "src": "3794:47:0" + "src": "2971:47:0" }, - "src": "3772:70:0" + "src": "2949:70:0" }, { "anonymous": false, "documentation": null, - "id": 294, + "id": 250, "name": "ChangeSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 293, + "id": 249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 244, "indexed": false, "name": "contractBalance", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3873:23:0", + "scope": 250, + "src": "3050:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3689,10 +3093,10 @@ "typeString": "uint256" }, "typeName": { - "id": 287, + "id": 243, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3873:7:0", + "src": "3050:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3703,12 +3107,12 @@ }, { "constant": false, - "id": 290, + "id": 246, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3898:16:0", + "scope": 250, + "src": "3075:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3716,10 +3120,10 @@ "typeString": "uint256" }, "typeName": { - "id": 289, + "id": 245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3898:7:0", + "src": "3075:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3730,12 +3134,12 @@ }, { "constant": false, - "id": 292, + "id": 248, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3916:16:0", + "scope": 250, + "src": "3093:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3743,10 +3147,10 @@ "typeString": "uint256" }, "typeName": { - "id": 291, + "id": 247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3916:7:0", + "src": "3093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3756,28 +3160,28 @@ "visibility": "internal" } ], - "src": "3872:61:0" + "src": "3049:61:0" }, - "src": "3847:87:0" + "src": "3024:87:0" }, { "anonymous": false, "documentation": null, - "id": 304, + "id": 260, "name": "WithdrawSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 303, + "id": 259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 296, + "id": 252, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3967:12:0", + "scope": 260, + "src": "3144:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3785,10 +3189,10 @@ "typeString": "address" }, "typeName": { - "id": 295, + "id": 251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3967:7:0", + "src": "3144:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3799,12 +3203,12 @@ }, { "constant": false, - "id": 298, + "id": 254, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3981:10:0", + "scope": 260, + "src": "3158:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3812,10 +3216,10 @@ "typeString": "address" }, "typeName": { - "id": 297, + "id": 253, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3981:7:0", + "src": "3158:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3826,12 +3230,12 @@ }, { "constant": false, - "id": 300, + "id": 256, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3993:10:0", + "scope": 260, + "src": "3170:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3839,10 +3243,10 @@ "typeString": "uint256" }, "typeName": { - "id": 299, + "id": 255, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3993:4:0", + "src": "3170:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3853,12 +3257,12 @@ }, { "constant": false, - "id": 302, + "id": 258, "indexed": false, "name": "newSharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "4005:33:0", + "scope": 260, + "src": "3182:33:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -3866,10 +3270,10 @@ "typeString": "uint256" }, "typeName": { - "id": 301, + "id": 257, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4005:7:0", + "src": "3182:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3879,15 +3283,15 @@ "visibility": "internal" } ], - "src": "3966:73:0" + "src": "3143:73:0" }, - "src": "3939:101:0" + "src": "3116:101:0" }, { "body": { - "id": 314, + "id": 270, "nodeType": "Block", - "src": "4126:47:0", + "src": "3303:47:0", "statements": [ { "expression": { @@ -3897,18 +3301,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 308, + "id": 264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4144:3:0", + "referencedDeclaration": 1500, + "src": "3321:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 309, + "id": 265, "isConstant": false, "isLValue": false, "isPure": false, @@ -3916,7 +3320,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4144:10:0", + "src": "3321:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -3926,18 +3330,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 310, + "id": 266, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4156:3:0", + "referencedDeclaration": 1500, + "src": "3333:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 311, + "id": 267, "isConstant": false, "isLValue": false, "isPure": false, @@ -3945,7 +3349,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4156:9:0", + "src": "3333:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -3963,18 +3367,18 @@ "typeString": "uint256" } ], - "id": 307, + "id": 263, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 230, - "src": "4136:7:0", + "referencedDeclaration": 186, + "src": "3313:7:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 312, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -3982,20 +3386,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4136:30:0", + "src": "3313:30:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 313, + "id": 269, "nodeType": "ExpressionStatement", - "src": "4136:30:0" + "src": "3313:30:0" } ] }, "documentation": null, - "id": 315, + "id": 271, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -4003,29 +3407,29 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 305, + "id": 261, "nodeType": "ParameterList", "parameters": [], - "src": "4108:2:0" + "src": "3285:2:0" }, "payable": true, "returnParameters": { - "id": 306, + "id": 262, "nodeType": "ParameterList", "parameters": [], - "src": "4126:0:0" + "src": "3303:0:0" }, - "scope": 1194, - "src": "4099:74:0", + "scope": 1146, + "src": "3276:74:0", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 333, + "id": 289, "nodeType": "Block", - "src": "4200:95:0", + "src": "3377:95:0", "statements": [ { "condition": { @@ -4034,7 +3438,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 327, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, @@ -4045,7 +3449,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 320, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -4054,18 +3458,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 317, + "id": 273, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4215:3:0", + "referencedDeclaration": 1500, + "src": "3392:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 318, + "id": 274, "isConstant": false, "isLValue": false, "isPure": false, @@ -4073,7 +3477,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4215:10:0", + "src": "3392:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4083,18 +3487,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 319, + "id": 275, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "4229:5:0", + "referencedDeclaration": 5, + "src": "3406:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4215:19:0", + "src": "3392:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4104,7 +3508,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 326, + "id": 282, "isConstant": false, "isLValue": false, "isPure": false, @@ -4112,41 +3516,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4238:26:0", + "src": "3415:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 321, + "id": 277, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4239:7:0", + "referencedDeclaration": 73, + "src": "3416:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 324, + "id": 280, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 322, + "id": 278, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4247:3:0", + "referencedDeclaration": 1500, + "src": "3424:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 323, + "id": 279, "isConstant": false, "isLValue": false, "isPure": false, @@ -4154,7 +3558,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4247:10:0", + "src": "3424:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4165,21 +3569,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4239:19:0", + "src": "3416:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 325, + "id": 281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "4239:25:0", + "referencedDeclaration": 80, + "src": "3416:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4190,37 +3594,37 @@ "typeString": "bool" } }, - "src": "4215:49:0", + "src": "3392:49:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 331, + "id": 287, "nodeType": "IfStatement", - "src": "4211:63:0", + "src": "3388:63:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 328, + "id": 284, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4266:6:0", + "referencedDeclaration": 1505, + "src": "3443:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 329, + "id": 285, "isConstant": false, "isLValue": false, "isPure": false, @@ -4228,47 +3632,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4266:8:0", + "src": "3443:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 330, + "id": 286, "nodeType": "ExpressionStatement", - "src": "4266:8:0" + "src": "3443:8:0" } }, { - "id": 332, + "id": 288, "nodeType": "PlaceholderStatement", - "src": "4287:1:0" + "src": "3464:1:0" } ] }, "documentation": null, - "id": 334, + "id": 290, "name": "onlyAdmin", "nodeType": "ModifierDefinition", "parameters": { - "id": 316, + "id": 272, "nodeType": "ParameterList", "parameters": [], - "src": "4197:2:0" + "src": "3374:2:0" }, - "src": "4179:116:0", + "src": "3356:116:0", "visibility": "internal" }, { "body": { - "id": 348, + "id": 304, "nodeType": "Block", - "src": "4336:64:0", + "src": "3513:64:0", "statements": [ { "condition": { "argumentTypes": null, - "id": 342, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -4276,33 +3680,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4351:20:0", + "src": "3528:20:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 338, + "id": 294, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4352:7:0", + "referencedDeclaration": 73, + "src": "3529:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 340, + "id": 296, "indexExpression": { "argumentTypes": null, - "id": 339, + "id": 295, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "4360:3:0", + "referencedDeclaration": 292, + "src": "3537:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4313,21 +3717,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4352:12:0", + "src": "3529:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 341, + "id": 297, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "4352:19:0", + "referencedDeclaration": 78, + "src": "3529:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -4339,30 +3743,30 @@ } }, "falseBody": null, - "id": 346, + "id": 302, "nodeType": "IfStatement", - "src": "4347:34:0", + "src": "3524:34:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 343, + "id": 299, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4373:6:0", + "referencedDeclaration": 1505, + "src": "3550:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 344, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -4370,39 +3774,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4373:8:0", + "src": "3550:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 345, + "id": 301, "nodeType": "ExpressionStatement", - "src": "4373:8:0" + "src": "3550:8:0" } }, { - "id": 347, + "id": 303, "nodeType": "PlaceholderStatement", - "src": "4392:1:0" + "src": "3569:1:0" } ] }, "documentation": null, - "id": 349, + "id": 305, "name": "onlyExisting", "nodeType": "ModifierDefinition", "parameters": { - "id": 337, + "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 336, + "id": 292, "name": "who", "nodeType": "VariableDeclaration", - "scope": 349, - "src": "4323:11:0", + "scope": 305, + "src": "3500:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4410,10 +3814,10 @@ "typeString": "address" }, "typeName": { - "id": 335, + "id": 291, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4323:7:0", + "src": "3500:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4423,34 +3827,34 @@ "visibility": "internal" } ], - "src": "4322:13:0" + "src": "3499:13:0" }, - "src": "4301:99:0", + "src": "3478:99:0", "visibility": "internal" }, { "body": { - "id": 357, + "id": 313, "nodeType": "Block", - "src": "4514:41:0", + "src": "3691:41:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 354, + "id": 310, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4531:10:0", + "referencedDeclaration": 76, + "src": "3708:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 355, + "id": 311, "isConstant": false, "isLValue": true, "isPure": false, @@ -4458,21 +3862,21 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4531:17:0", + "src": "3708:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 353, - "id": 356, + "functionReturnParameters": 309, + "id": 312, "nodeType": "Return", - "src": "4524:24:0" + "src": "3701:24:0" } ] }, "documentation": null, - "id": 358, + "id": 314, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4480,23 +3884,23 @@ "name": "getMemberCount", "nodeType": "FunctionDefinition", "parameters": { - "id": 350, + "id": 306, "nodeType": "ParameterList", "parameters": [], - "src": "4481:2:0" + "src": "3658:2:0" }, "payable": false, "returnParameters": { - "id": 353, + "id": 309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 352, + "id": 308, "name": "", "nodeType": "VariableDeclaration", - "scope": 358, - "src": "4508:4:0", + "scope": 314, + "src": "3685:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4504,10 +3908,10 @@ "typeString": "uint256" }, "typeName": { - "id": 351, + "id": 307, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4508:4:0", + "src": "3685:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4517,45 +3921,45 @@ "visibility": "internal" } ], - "src": "4507:6:0" + "src": "3684:6:0" }, - "scope": 1194, - "src": "4458:97:0", + "scope": 1146, + "src": "3635:97:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 369, + "id": 325, "nodeType": "Block", - "src": "4632:39:0", + "src": "3809:39:0", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 321, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4649:10:0", + "referencedDeclaration": 76, + "src": "3826:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 367, + "id": 323, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 322, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "4660:3:0", + "referencedDeclaration": 316, + "src": "3837:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4566,21 +3970,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4649:15:0", + "src": "3826:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 364, - "id": 368, + "functionReturnParameters": 320, + "id": 324, "nodeType": "Return", - "src": "4642:22:0" + "src": "3819:22:0" } ] }, "documentation": null, - "id": 370, + "id": 326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4588,16 +3992,16 @@ "name": "getMemberAtKey", "nodeType": "FunctionDefinition", "parameters": { - "id": 361, + "id": 317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 360, + "id": 316, "name": "key", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4589:8:0", + "scope": 326, + "src": "3766:8:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4605,10 +4009,10 @@ "typeString": "uint256" }, "typeName": { - "id": 359, + "id": 315, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4589:4:0", + "src": "3766:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4618,20 +4022,20 @@ "visibility": "internal" } ], - "src": "4588:10:0" + "src": "3765:10:0" }, "payable": false, "returnParameters": { - "id": 364, + "id": 320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 363, + "id": 319, "name": "", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4623:7:0", + "scope": 326, + "src": "3800:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4639,10 +4043,10 @@ "typeString": "address" }, "typeName": { - "id": 362, + "id": 318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4623:7:0", + "src": "3800:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4652,37 +4056,37 @@ "visibility": "internal" } ], - "src": "4622:9:0" + "src": "3799:9:0" }, - "scope": 1194, - "src": "4565:106:0", + "scope": 1146, + "src": "3742:106:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 378, + "id": 334, "nodeType": "Block", - "src": "4744:36:0", + "src": "3921:36:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 375, + "id": 331, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "4761:4:0", + "referencedDeclaration": 1513, + "src": "3938:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 376, + "id": 332, "isConstant": false, "isLValue": false, "isPure": false, @@ -4690,21 +4094,21 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4761:12:0", + "src": "3938:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 374, - "id": 377, + "functionReturnParameters": 330, + "id": 333, "nodeType": "Return", - "src": "4754:19:0" + "src": "3931:19:0" } ] }, "documentation": null, - "id": 379, + "id": 335, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4712,23 +4116,23 @@ "name": "getBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 371, + "id": 327, "nodeType": "ParameterList", "parameters": [], - "src": "4700:2:0" + "src": "3877:2:0" }, "payable": false, "returnParameters": { - "id": 374, + "id": 330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 373, + "id": 329, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 379, - "src": "4727:15:0", + "scope": 335, + "src": "3904:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4736,10 +4140,10 @@ "typeString": "uint256" }, "typeName": { - "id": 372, + "id": 328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4727:7:0", + "src": "3904:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4749,19 +4153,19 @@ "visibility": "internal" } ], - "src": "4726:17:0" + "src": "3903:17:0" }, - "scope": 1194, - "src": "4681:99:0", + "scope": 1146, + "src": "3858:99:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 401, + "id": 357, "nodeType": "Block", - "src": "4945:94:0", + "src": "4122:94:0", "statements": [ { "expression": { @@ -4772,12 +4176,12 @@ "arguments": [ { "argumentTypes": null, - "id": 393, + "id": 349, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4970:4:0", + "referencedDeclaration": 338, + "src": "4147:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -4791,20 +4195,20 @@ "typeString": "string memory" } ], - "id": 392, + "id": 348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4963:6:0", + "src": "4140:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": "string" }, - "id": 394, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -4812,7 +4216,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4963:12:0", + "src": "4140:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -4820,12 +4224,12 @@ }, { "argumentTypes": null, - "id": 395, + "id": 351, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4977:5:0", + "referencedDeclaration": 340, + "src": "4154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4833,12 +4237,12 @@ }, { "argumentTypes": null, - "id": 396, + "id": 352, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "4984:18:0", + "referencedDeclaration": 342, + "src": "4161:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4846,12 +4250,12 @@ }, { "argumentTypes": null, - "id": 397, + "id": 353, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "5004:11:0", + "referencedDeclaration": 344, + "src": "4181:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4859,40 +4263,40 @@ }, { "argumentTypes": null, - "id": 398, + "id": 354, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "5017:14:0", + "referencedDeclaration": 346, + "src": "4194:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 399, + "id": 355, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4962:70:0", + "src": "4139:70:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_string_memory_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(string memory,address,uint256,uint256,uint256)" } }, - "functionReturnParameters": 391, - "id": 400, + "functionReturnParameters": 347, + "id": 356, "nodeType": "Return", - "src": "4955:77:0" + "src": "4132:77:0" } ] }, "documentation": null, - "id": 402, + "id": 358, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -4900,23 +4304,23 @@ "name": "getContractInfo", "nodeType": "FunctionDefinition", "parameters": { - "id": 380, + "id": 336, "nodeType": "ParameterList", "parameters": [], - "src": "4814:2:0" + "src": "3991:2:0" }, "payable": false, "returnParameters": { - "id": 391, + "id": 347, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 382, + "id": 338, "name": "name", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4841:11:0", + "scope": 358, + "src": "4018:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4924,10 +4328,10 @@ "typeString": "string" }, "typeName": { - "id": 381, + "id": 337, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4841:6:0", + "src": "4018:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -4938,11 +4342,11 @@ }, { "constant": false, - "id": 384, + "id": 340, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4854:13:0", + "scope": 358, + "src": "4031:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4950,10 +4354,10 @@ "typeString": "address" }, "typeName": { - "id": 383, + "id": 339, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4854:7:0", + "src": "4031:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -4964,11 +4368,11 @@ }, { "constant": false, - "id": 386, + "id": 342, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4870:26:0", + "scope": 358, + "src": "4047:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -4976,10 +4380,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 341, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4870:7:0", + "src": "4047:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -4990,11 +4394,11 @@ }, { "constant": false, - "id": 388, + "id": 344, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4899:19:0", + "scope": 358, + "src": "4076:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5002,10 +4406,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 343, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4899:7:0", + "src": "4076:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5016,11 +4420,11 @@ }, { "constant": false, - "id": 390, + "id": 346, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4921:22:0", + "scope": 358, + "src": "4098:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5028,10 +4432,10 @@ "typeString": "uint256" }, "typeName": { - "id": 389, + "id": 345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4921:7:0", + "src": "4098:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5041,47 +4445,47 @@ "visibility": "internal" } ], - "src": "4840:104:0" + "src": "4017:104:0" }, - "scope": 1194, - "src": "4790:249:0", + "scope": 1146, + "src": "3967:249:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 434, + "id": 390, "nodeType": "Block", - "src": "5202:111:0", + "src": "4379:111:0", "statements": [ { "assignments": [ - 419 + 375 ], "declarations": [ { "constant": false, - "id": 419, + "id": 375, "name": "m", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5210:15:0", + "scope": 391, + "src": "4387:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 418, + "id": 374, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5210:6:0", + "referencedDeclaration": 91, + "src": "4387:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -5089,31 +4493,31 @@ "visibility": "internal" } ], - "id": 423, + "id": 379, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 420, + "id": 376, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5228:7:0", + "referencedDeclaration": 73, + "src": "4405:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 422, + "id": 378, "indexExpression": { "argumentTypes": null, - "id": 421, + "id": 377, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5236:8:0", + "referencedDeclaration": 360, + "src": "4413:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5124,14 +4528,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5228:17:0", + "src": "4405:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5210:35:0" + "src": "4387:35:0" }, { "expression": { @@ -5141,26 +4545,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 424, + "id": 380, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5261:1:0", + "referencedDeclaration": 375, + "src": "4438:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 425, + "id": 381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5261:7:0", + "referencedDeclaration": 80, + "src": "4438:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5170,26 +4574,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 426, + "id": 382, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5270:1:0", + "referencedDeclaration": 375, + "src": "4447:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 427, + "id": 383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5270:8:0", + "referencedDeclaration": 82, + "src": "4447:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5199,26 +4603,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 428, + "id": 384, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5280:1:0", + "referencedDeclaration": 375, + "src": "4457:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 429, + "id": 385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5280:11:0", + "referencedDeclaration": 84, + "src": "4457:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5228,54 +4632,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 430, + "id": 386, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5293:1:0", + "referencedDeclaration": 375, + "src": "4470:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 431, + "id": 387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "5293:12:0", + "referencedDeclaration": 86, + "src": "4470:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } } ], - "id": 432, + "id": 388, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5260:46:0", + "src": "4437:46:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$_t_uint256_$_t_string_memory_$", "typeString": "tuple(bool,uint256,uint256,string memory)" } }, - "functionReturnParameters": 417, - "id": 433, + "functionReturnParameters": 373, + "id": 389, "nodeType": "Return", - "src": "5253:53:0" + "src": "4430:53:0" } ] }, "documentation": null, - "id": 435, + "id": 391, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5284,49 +4688,49 @@ "arguments": [ { "argumentTypes": null, - "id": 407, + "id": 363, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5118:8:0", + "referencedDeclaration": 360, + "src": "4295:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 408, + "id": 364, "modifierName": { "argumentTypes": null, - "id": 406, + "id": 362, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5105:12:0", + "referencedDeclaration": 305, + "src": "4282:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "5105:22:0" + "src": "4282:22:0" } ], "name": "returnMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 405, + "id": 361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 404, + "id": 360, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5071:16:0", + "scope": 391, + "src": "4248:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5334,10 +4738,10 @@ "typeString": "address" }, "typeName": { - "id": 403, + "id": 359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5071:7:0", + "src": "4248:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5347,20 +4751,20 @@ "visibility": "internal" } ], - "src": "5070:18:0" + "src": "4247:18:0" }, "payable": false, "returnParameters": { - "id": 417, + "id": 373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 410, + "id": 366, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5136:10:0", + "scope": 391, + "src": "4313:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5368,10 +4772,10 @@ "typeString": "bool" }, "typeName": { - "id": 409, + "id": 365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5136:4:0", + "src": "4313:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -5382,11 +4786,11 @@ }, { "constant": false, - "id": 412, + "id": 368, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5148:14:0", + "scope": 391, + "src": "4325:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5394,10 +4798,10 @@ "typeString": "uint256" }, "typeName": { - "id": 411, + "id": 367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5148:7:0", + "src": "4325:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5408,11 +4812,11 @@ }, { "constant": false, - "id": 414, + "id": 370, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5164:17:0", + "scope": 391, + "src": "4341:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5420,10 +4824,10 @@ "typeString": "uint256" }, "typeName": { - "id": 413, + "id": 369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5164:7:0", + "src": "4341:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5434,11 +4838,11 @@ }, { "constant": false, - "id": 416, + "id": 372, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5183:17:0", + "scope": 391, + "src": "4360:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5446,10 +4850,10 @@ "typeString": "string" }, "typeName": { - "id": 415, + "id": 371, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5183:6:0", + "src": "4360:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -5459,19 +4863,19 @@ "visibility": "internal" } ], - "src": "5135:66:0" + "src": "4312:66:0" }, - "scope": 1194, - "src": "5049:264:0", + "scope": 1146, + "src": "4226:264:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 451, + "id": 407, "nodeType": "Block", - "src": "5394:200:0", + "src": "4571:61:0", "statements": [ { "expression": { @@ -5482,14 +4886,14 @@ "arguments": [ { "argumentTypes": null, - "id": 447, + "id": 403, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "5442:4:0", + "referencedDeclaration": 1513, + "src": "4619:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } } @@ -5497,24 +4901,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } ], - "id": 446, + "id": 402, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5434:7:0", + "src": "4611:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 448, + "id": 404, "isConstant": false, "isLValue": false, "isPure": false, @@ -5522,7 +4926,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5434:13:0", + "src": "4611:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5541,12 +4945,12 @@ "arguments": [ { "argumentTypes": null, - "id": 443, + "id": 399, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "5417:5:0", + "referencedDeclaration": 393, + "src": "4594:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5560,18 +4964,18 @@ "typeString": "address" } ], - "id": 442, + "id": 398, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "5411:5:0", + "referencedDeclaration": 1213, + "src": "4588:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 444, + "id": 400, "isConstant": false, "isLValue": false, "isPure": false, @@ -5579,27 +4983,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:12:0", + "src": "4588:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 445, + "id": 401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1203, - "src": "5411:22:0", + "referencedDeclaration": 1155, + "src": "4588:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 449, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -5607,21 +5011,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:37:0", + "src": "4588:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 441, - "id": 450, + "functionReturnParameters": 397, + "id": 406, "nodeType": "Return", - "src": "5404:44:0" + "src": "4581:44:0" } ] }, "documentation": null, - "id": 452, + "id": 408, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -5629,16 +5033,16 @@ "name": "checkERC20Balance", "nodeType": "FunctionDefinition", "parameters": { - "id": 438, + "id": 394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 437, + "id": 393, "name": "token", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5346:13:0", + "scope": 408, + "src": "4523:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5646,10 +5050,10 @@ "typeString": "address" }, "typeName": { - "id": 436, + "id": 392, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5346:7:0", + "src": "4523:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5659,20 +5063,20 @@ "visibility": "internal" } ], - "src": "5345:15:0" + "src": "4522:15:0" }, "payable": false, "returnParameters": { - "id": 441, + "id": 397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 440, + "id": 396, "name": "", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5385:7:0", + "scope": 408, + "src": "4562:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -5680,10 +5084,10 @@ "typeString": "uint256" }, "typeName": { - "id": 439, + "id": 395, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5385:7:0", + "src": "4562:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5693,19 +5097,19 @@ "visibility": "internal" } ], - "src": "5384:9:0" + "src": "4561:9:0" }, - "scope": 1194, - "src": "5319:275:0", + "scope": 1146, + "src": "4496:136:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 521, + "id": 477, "nodeType": "Block", - "src": "5746:399:0", + "src": "4784:399:0", "statements": [ { "condition": { @@ -5714,26 +5118,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 465, + "id": 421, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5817:7:0", + "referencedDeclaration": 73, + "src": "4855:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 467, + "id": 423, "indexExpression": { "argumentTypes": null, - "id": 466, + "id": 422, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "5825:3:0", + "referencedDeclaration": 410, + "src": "4863:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -5744,51 +5148,51 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5817:12:0", + "src": "4855:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 468, + "id": 424, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5817:19:0", + "referencedDeclaration": 78, + "src": "4855:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 472, + "id": 428, "nodeType": "IfStatement", - "src": "5813:33:0", + "src": "4851:33:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 469, + "id": 425, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5838:6:0", + "referencedDeclaration": 1505, + "src": "4876:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 470, + "id": 426, "isConstant": false, "isLValue": false, "isPure": false, @@ -5796,15 +5200,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5838:8:0", + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 427, "nodeType": "ExpressionStatement", - "src": "5838:8:0" + "src": "4876:8:0" } }, { @@ -5814,7 +5218,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 478, + "id": 434, "isConstant": false, "isLValue": false, "isPure": false, @@ -5826,12 +5230,12 @@ "arguments": [ { "argumentTypes": null, - "id": 474, + "id": 430, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "5866:10:0", + "referencedDeclaration": 416, + "src": "4904:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -5845,20 +5249,20 @@ "typeString": "string memory" } ], - "id": 473, + "id": 429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5860:5:0", + "src": "4898:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 475, + "id": 431, "isConstant": false, "isLValue": false, "isPure": false, @@ -5866,13 +5270,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5860:17:0", + "src": "4898:17:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 476, + "id": 432, "isConstant": false, "isLValue": false, "isPure": false, @@ -5880,7 +5284,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5860:24:0", + "src": "4898:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -5891,14 +5295,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 477, + "id": 433, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5887:2:0", + "src": "4925:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -5906,37 +5310,37 @@ }, "value": "21" }, - "src": "5860:29:0", + "src": "4898:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 482, + "id": 438, "nodeType": "IfStatement", - "src": "5856:43:0", + "src": "4894:43:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 479, + "id": 435, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5891:6:0", + "referencedDeclaration": 1505, + "src": "4929:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 480, + "id": 436, "isConstant": false, "isLValue": false, "isPure": false, @@ -5944,15 +5348,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5891:8:0", + "src": "4929:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 481, + "id": 437, "nodeType": "ExpressionStatement", - "src": "5891:8:0" + "src": "4929:8:0" } }, { @@ -5960,26 +5364,26 @@ "declarations": [ { "constant": false, - "id": 484, + "id": 440, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5910:23:0", + "scope": 478, + "src": "4948:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 483, + "id": 439, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5910:6:0", + "referencedDeclaration": 91, + "src": "4948:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -5987,15 +5391,15 @@ "visibility": "internal" } ], - "id": 485, + "id": 441, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "5910:23:0" + "src": "4948:23:0" }, { "expression": { "argumentTypes": null, - "id": 490, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -6004,26 +5408,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 486, + "id": 442, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5943:9:0", + "referencedDeclaration": 440, + "src": "4981:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 488, + "id": 444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5943:16:0", + "referencedDeclaration": 78, + "src": "4981:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6034,14 +5438,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 489, + "id": 445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5962:4:0", + "src": "5000:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -6049,20 +5453,20 @@ }, "value": "true" }, - "src": "5943:23:0", + "src": "4981:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 491, + "id": 447, "nodeType": "ExpressionStatement", - "src": "5943:23:0" + "src": "4981:23:0" }, { "expression": { "argumentTypes": null, - "id": 496, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -6071,26 +5475,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 492, + "id": 448, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5976:9:0", + "referencedDeclaration": 440, + "src": "5014:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 494, + "id": 450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5976:15:0", + "referencedDeclaration": 80, + "src": "5014:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6100,31 +5504,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 495, + "id": 451, "name": "admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "5994:5:0", + "referencedDeclaration": 414, + "src": "5032:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5976:23:0", + "src": "5014:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 497, + "id": 453, "nodeType": "ExpressionStatement", - "src": "5976:23:0" + "src": "5014:23:0" }, { "expression": { "argumentTypes": null, - "id": 502, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, @@ -6133,26 +5537,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 498, + "id": 454, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6009:9:0", + "referencedDeclaration": 440, + "src": "5047:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 500, + "id": 456, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6009:20:0", + "referencedDeclaration": 86, + "src": "5047:20:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -6162,31 +5566,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 501, + "id": 457, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6032:10:0", + "referencedDeclaration": 416, + "src": "5070:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6009:33:0", + "src": "5047:33:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, - "id": 503, + "id": 459, "nodeType": "ExpressionStatement", - "src": "6009:33:0" + "src": "5047:33:0" }, { "expression": { "argumentTypes": null, - "id": 508, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -6195,26 +5599,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 504, + "id": 460, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6053:7:0", + "referencedDeclaration": 73, + "src": "5091:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 506, + "id": 462, "indexExpression": { "argumentTypes": null, - "id": 505, + "id": 461, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6061:3:0", + "referencedDeclaration": 410, + "src": "5099:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6225,9 +5629,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6053:12:0", + "src": "5091:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -6235,26 +5639,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 507, + "id": 463, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6068:9:0", + "referencedDeclaration": 440, + "src": "5106:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "6053:24:0", + "src": "5091:24:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 509, + "id": 465, "nodeType": "ExpressionStatement", - "src": "6053:24:0" + "src": "5091:24:0" }, { "expression": { @@ -6262,12 +5666,12 @@ "arguments": [ { "argumentTypes": null, - "id": 513, + "id": 469, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6103:3:0", + "referencedDeclaration": 410, + "src": "5141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6283,18 +5687,18 @@ ], "expression": { "argumentTypes": null, - "id": 510, + "id": 466, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "6087:10:0", + "referencedDeclaration": 76, + "src": "5125:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 512, + "id": 468, "isConstant": false, "isLValue": false, "isPure": false, @@ -6302,13 +5706,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6087:15:0", + "src": "5125:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 514, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, @@ -6316,15 +5720,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:20:0", + "src": "5125:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 515, + "id": 471, "nodeType": "ExpressionStatement", - "src": "6087:20:0" + "src": "5125:20:0" }, { "expression": { @@ -6332,12 +5736,12 @@ "arguments": [ { "argumentTypes": null, - "id": 517, + "id": 473, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6126:3:0", + "referencedDeclaration": 410, + "src": "5164:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6345,12 +5749,12 @@ }, { "argumentTypes": null, - "id": 518, + "id": 474, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "6131:6:0", + "referencedDeclaration": 412, + "src": "5169:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6368,18 +5772,18 @@ "typeString": "uint256" } ], - "id": 516, + "id": 472, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "6117:8:0", + "referencedDeclaration": 770, + "src": "5155:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 519, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -6387,57 +5791,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:21:0", + "src": "5155:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6117:21:0" + "src": "5155:21:0" } ] }, "documentation": null, - "id": 522, + "id": 478, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 463, + "id": 419, "modifierName": { "argumentTypes": null, - "id": 462, + "id": 418, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "5734:9:0", + "referencedDeclaration": 290, + "src": "4772:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "5734:11:0" + "src": "4772:11:0" } ], "name": "addMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 454, + "id": 410, "name": "who", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5667:11:0", + "scope": 478, + "src": "4705:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6445,10 +5849,10 @@ "typeString": "address" }, "typeName": { - "id": 453, + "id": 409, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5667:7:0", + "src": "4705:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6459,11 +5863,11 @@ }, { "constant": false, - "id": 456, + "id": 412, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5680:14:0", + "scope": 478, + "src": "4718:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6471,10 +5875,10 @@ "typeString": "uint256" }, "typeName": { - "id": 455, + "id": 411, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5680:7:0", + "src": "4718:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -6485,11 +5889,11 @@ }, { "constant": false, - "id": 458, + "id": 414, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5696:10:0", + "scope": 478, + "src": "4734:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6497,10 +5901,10 @@ "typeString": "bool" }, "typeName": { - "id": 457, + "id": 413, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5696:4:0", + "src": "4734:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6511,11 +5915,11 @@ }, { "constant": false, - "id": 460, + "id": 416, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5708:17:0", + "scope": 478, + "src": "4746:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -6523,10 +5927,10 @@ "typeString": "string" }, "typeName": { - "id": 459, + "id": 415, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5708:6:0", + "src": "4746:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -6536,26 +5940,26 @@ "visibility": "internal" } ], - "src": "5666:60:0" + "src": "4704:60:0" }, "payable": false, "returnParameters": { - "id": 464, + "id": 420, "nodeType": "ParameterList", "parameters": [], - "src": "5746:0:0" + "src": "4784:0:0" }, - "scope": 1194, - "src": "5648:497:0", + "scope": 1146, + "src": "4686:497:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 575, + "id": 531, "nodeType": "Block", - "src": "6248:244:0", + "src": "5286:244:0", "statements": [ { "condition": { @@ -6564,7 +5968,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 544, + "id": 500, "isConstant": false, "isLValue": false, "isPure": false, @@ -6578,26 +5982,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 536, + "id": 492, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6267:7:0", + "referencedDeclaration": 73, + "src": "5305:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 538, + "id": 494, "indexExpression": { "argumentTypes": null, - "id": 537, + "id": 493, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6275:3:0", + "referencedDeclaration": 480, + "src": "5313:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6608,21 +6012,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6267:12:0", + "src": "5305:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 539, + "id": 495, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6267:23:0", + "referencedDeclaration": 86, + "src": "5305:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -6636,18 +6040,18 @@ "typeString": "string storage ref" } ], - "id": 535, + "id": 491, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6262:4:0", + "referencedDeclaration": 1510, + "src": "5300:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 540, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -6655,7 +6059,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6262:29:0", + "src": "5300:29:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -6668,12 +6072,12 @@ "arguments": [ { "argumentTypes": null, - "id": 542, + "id": 498, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6300:4:0", + "referencedDeclaration": 486, + "src": "5338:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6687,18 +6091,18 @@ "typeString": "string memory" } ], - "id": 541, + "id": 497, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6295:4:0", + "referencedDeclaration": 1510, + "src": "5333:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 543, + "id": 499, "isConstant": false, "isLValue": false, "isPure": false, @@ -6706,34 +6110,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6295:10:0", + "src": "5333:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6262:43:0", + "src": "5300:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 550, + "id": 506, "nodeType": "IfStatement", - "src": "6258:76:0", + "src": "5296:76:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 502, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6324:3:0", + "referencedDeclaration": 480, + "src": "5362:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6741,12 +6145,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 503, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6329:4:0", + "referencedDeclaration": 486, + "src": "5367:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -6764,18 +6168,18 @@ "typeString": "string memory" } ], - "id": 545, + "id": 501, "name": "changeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6307:16:0", + "referencedDeclaration": 589, + "src": "5345:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory)" } }, - "id": 548, + "id": 504, "isConstant": false, "isLValue": false, "isPure": false, @@ -6783,15 +6187,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6307:27:0", + "src": "5345:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 549, + "id": 505, "nodeType": "ExpressionStatement", - "src": "6307:27:0" + "src": "5345:27:0" } }, { @@ -6801,7 +6205,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 556, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, @@ -6812,26 +6216,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 551, + "id": 507, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6348:7:0", + "referencedDeclaration": 73, + "src": "5386:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 553, + "id": 509, "indexExpression": { "argumentTypes": null, - "id": 552, + "id": 508, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6356:3:0", + "referencedDeclaration": 480, + "src": "5394:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6842,21 +6246,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6348:12:0", + "src": "5386:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 554, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6348:18:0", + "referencedDeclaration": 80, + "src": "5386:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6866,39 +6270,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 555, + "id": 511, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6370:7:0", + "referencedDeclaration": 484, + "src": "5408:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6348:29:0", + "src": "5386:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 562, + "id": 518, "nodeType": "IfStatement", - "src": "6344:69:0", + "src": "5382:69:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 558, + "id": 514, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6400:3:0", + "referencedDeclaration": 480, + "src": "5438:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -6906,12 +6310,12 @@ }, { "argumentTypes": null, - "id": 559, + "id": 515, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6405:7:0", + "referencedDeclaration": 484, + "src": "5443:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -6929,18 +6333,18 @@ "typeString": "bool" } ], - "id": 557, + "id": 513, "name": "changeAdminPrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "6379:20:0", + "referencedDeclaration": 615, + "src": "5417:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,bool)" } }, - "id": 560, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, @@ -6948,15 +6352,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6379:34:0", + "src": "5417:34:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 561, + "id": 517, "nodeType": "ExpressionStatement", - "src": "6379:34:0" + "src": "5417:34:0" } }, { @@ -6966,7 +6370,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 568, + "id": 524, "isConstant": false, "isLValue": false, "isPure": false, @@ -6977,26 +6381,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 563, + "id": 519, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6427:7:0", + "referencedDeclaration": 73, + "src": "5465:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 565, + "id": 521, "indexExpression": { "argumentTypes": null, - "id": 564, + "id": 520, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6435:3:0", + "referencedDeclaration": 480, + "src": "5473:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7007,21 +6411,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6427:12:0", + "src": "5465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 566, + "id": 522, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6427:19:0", + "referencedDeclaration": 82, + "src": "5465:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7031,39 +6435,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 567, + "id": 523, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6450:6:0", + "referencedDeclaration": 482, + "src": "5488:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6427:29:0", + "src": "5465:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 574, + "id": 530, "nodeType": "IfStatement", - "src": "6423:62:0", + "src": "5461:62:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 570, + "id": 526, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6473:3:0", + "referencedDeclaration": 480, + "src": "5511:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7071,12 +6475,12 @@ }, { "argumentTypes": null, - "id": 571, + "id": 527, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6478:6:0", + "referencedDeclaration": 482, + "src": "5516:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7094,18 +6498,18 @@ "typeString": "uint256" } ], - "id": 569, + "id": 525, "name": "allocateShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 772, - "src": "6458:14:0", + "referencedDeclaration": 728, + "src": "5496:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 572, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -7113,58 +6517,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6458:27:0", + "src": "5496:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 573, + "id": 529, "nodeType": "ExpressionStatement", - "src": "6458:27:0" + "src": "5496:27:0" } } ] }, "documentation": null, - "id": 576, + "id": 532, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 533, + "id": 489, "modifierName": { "argumentTypes": null, - "id": 532, + "id": 488, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6236:9:0", + "referencedDeclaration": 290, + "src": "5274:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6236:11:0" + "src": "5274:11:0" } ], "name": "updateMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 524, + "id": 480, "name": "who", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6173:11:0", + "scope": 532, + "src": "5211:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7172,10 +6576,10 @@ "typeString": "address" }, "typeName": { - "id": 523, + "id": 479, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6173:7:0", + "src": "5211:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7186,11 +6590,11 @@ }, { "constant": false, - "id": 526, + "id": 482, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6186:14:0", + "scope": 532, + "src": "5224:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7198,10 +6602,10 @@ "typeString": "uint256" }, "typeName": { - "id": 525, + "id": 481, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6186:7:0", + "src": "5224:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7212,11 +6616,11 @@ }, { "constant": false, - "id": 528, + "id": 484, "name": "isAdmin", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6202:12:0", + "scope": 532, + "src": "5240:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7224,10 +6628,10 @@ "typeString": "bool" }, "typeName": { - "id": 527, + "id": 483, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6202:4:0", + "src": "5240:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7238,11 +6642,11 @@ }, { "constant": false, - "id": 530, + "id": 486, "name": "name", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6216:11:0", + "scope": 532, + "src": "5254:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -7250,10 +6654,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 485, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6216:6:0", + "src": "5254:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -7263,26 +6667,26 @@ "visibility": "internal" } ], - "src": "6172:56:0" + "src": "5210:56:0" }, "payable": false, "returnParameters": { - "id": 534, + "id": 490, "nodeType": "ParameterList", "parameters": [], - "src": "6248:0:0" + "src": "5286:0:0" }, - "scope": 1194, - "src": "6151:341:0", + "scope": 1146, + "src": "5189:341:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 632, + "id": 588, "nodeType": "Block", - "src": "6638:259:0", + "src": "5676:259:0", "statements": [ { "condition": { @@ -7291,7 +6695,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 601, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, @@ -7302,7 +6706,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 594, + "id": 550, "isConstant": false, "isLValue": false, "isPure": false, @@ -7313,7 +6717,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 589, + "id": 545, "isConstant": false, "isLValue": false, "isPure": false, @@ -7322,18 +6726,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 586, + "id": 542, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6652:3:0", + "referencedDeclaration": 1500, + "src": "5690:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 587, + "id": 543, "isConstant": false, "isLValue": false, "isPure": false, @@ -7341,7 +6745,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6652:10:0", + "src": "5690:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7351,18 +6755,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 588, + "id": 544, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6666:3:0", + "referencedDeclaration": 534, + "src": "5704:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6652:17:0", + "src": "5690:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7376,7 +6780,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 593, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -7385,18 +6789,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 590, + "id": 546, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6673:3:0", + "referencedDeclaration": 1500, + "src": "5711:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 591, + "id": 547, "isConstant": false, "isLValue": false, "isPure": false, @@ -7404,7 +6808,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6673:10:0", + "src": "5711:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7414,24 +6818,24 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 592, + "id": 548, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "6687:5:0", + "referencedDeclaration": 5, + "src": "5725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6673:19:0", + "src": "5711:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6652:40:0", + "src": "5690:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7441,7 +6845,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 600, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, @@ -7449,41 +6853,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6696:26:0", + "src": "5734:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 595, + "id": 551, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6697:7:0", + "referencedDeclaration": 73, + "src": "5735:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 598, + "id": 554, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 596, + "id": 552, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6705:3:0", + "referencedDeclaration": 1500, + "src": "5743:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 597, + "id": 553, "isConstant": false, "isLValue": false, "isPure": false, @@ -7491,7 +6895,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6705:10:0", + "src": "5743:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7502,21 +6906,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6697:19:0", + "src": "5735:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 599, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6697:25:0", + "referencedDeclaration": 80, + "src": "5735:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -7527,37 +6931,37 @@ "typeString": "bool" } }, - "src": "6652:70:0", + "src": "5690:70:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 605, + "id": 561, "nodeType": "IfStatement", - "src": "6648:84:0", + "src": "5686:84:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 602, + "id": 558, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6724:6:0", + "referencedDeclaration": 1505, + "src": "5762:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 603, + "id": 559, "isConstant": false, "isLValue": false, "isPure": false, @@ -7565,15 +6969,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6724:8:0", + "src": "5762:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 604, + "id": 560, "nodeType": "ExpressionStatement", - "src": "6724:8:0" + "src": "5762:8:0" } }, { @@ -7583,7 +6987,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 611, + "id": 567, "isConstant": false, "isLValue": false, "isPure": false, @@ -7595,12 +6999,12 @@ "arguments": [ { "argumentTypes": null, - "id": 607, + "id": 563, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6752:7:0", + "referencedDeclaration": 536, + "src": "5790:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7614,20 +7018,20 @@ "typeString": "string memory" } ], - "id": 606, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6746:5:0", + "src": "5784:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 608, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, @@ -7635,13 +7039,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6746:14:0", + "src": "5784:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 609, + "id": 565, "isConstant": false, "isLValue": false, "isPure": false, @@ -7649,7 +7053,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6746:21:0", + "src": "5784:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -7660,14 +7064,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 610, + "id": 566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6770:2:0", + "src": "5808:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -7675,37 +7079,37 @@ }, "value": "21" }, - "src": "6746:26:0", + "src": "5784:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 615, + "id": 571, "nodeType": "IfStatement", - "src": "6742:40:0", + "src": "5780:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 612, + "id": 568, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6774:6:0", + "referencedDeclaration": 1505, + "src": "5812:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 613, + "id": 569, "isConstant": false, "isLValue": false, "isPure": false, @@ -7713,15 +7117,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6774:8:0", + "src": "5812:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 614, + "id": 570, "nodeType": "ExpressionStatement", - "src": "6774:8:0" + "src": "5812:8:0" } }, { @@ -7730,12 +7134,12 @@ "arguments": [ { "argumentTypes": null, - "id": 617, + "id": 573, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6809:3:0", + "referencedDeclaration": 534, + "src": "5847:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7747,26 +7151,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 618, + "id": 574, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6814:7:0", + "referencedDeclaration": 73, + "src": "5852:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 620, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 619, + "id": 575, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6822:3:0", + "referencedDeclaration": 534, + "src": "5860:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7777,21 +7181,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6814:12:0", + "src": "5852:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 621, + "id": 577, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6814:23:0", + "referencedDeclaration": 86, + "src": "5852:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7799,12 +7203,12 @@ }, { "argumentTypes": null, - "id": 622, + "id": 578, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6839:7:0", + "referencedDeclaration": 536, + "src": "5877:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -7826,18 +7230,18 @@ "typeString": "string memory" } ], - "id": 616, + "id": 572, "name": "ChangeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "6792:16:0", + "referencedDeclaration": 242, + "src": "5830:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 623, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, @@ -7845,20 +7249,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6792:55:0", + "src": "5830:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 624, + "id": 580, "nodeType": "ExpressionStatement", - "src": "6792:55:0" + "src": "5830:55:0" }, { "expression": { "argumentTypes": null, - "id": 630, + "id": 586, "isConstant": false, "isLValue": false, "isPure": false, @@ -7869,26 +7273,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 625, + "id": 581, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6857:7:0", + "referencedDeclaration": 73, + "src": "5895:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 627, + "id": 583, "indexExpression": { "argumentTypes": null, - "id": 626, + "id": 582, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6865:3:0", + "referencedDeclaration": 534, + "src": "5903:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -7899,21 +7303,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6857:12:0", + "src": "5895:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 628, + "id": 584, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6857:23:0", + "referencedDeclaration": 86, + "src": "5895:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -7923,31 +7327,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 629, + "id": 585, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6883:7:0", + "referencedDeclaration": 536, + "src": "5921:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6857:33:0", + "src": "5895:33:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 631, + "id": 587, "nodeType": "ExpressionStatement", - "src": "6857:33:0" + "src": "5895:33:0" } ] }, "documentation": null, - "id": 633, + "id": 589, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -7956,49 +7360,49 @@ "arguments": [ { "argumentTypes": null, - "id": 583, + "id": 539, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6633:3:0", + "referencedDeclaration": 534, + "src": "5671:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 584, + "id": 540, "modifierName": { "argumentTypes": null, - "id": 582, + "id": 538, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "6620:12:0", + "referencedDeclaration": 305, + "src": "5658:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6620:17:0" + "src": "5658:17:0" } ], "name": "changeMemberName", "nodeType": "FunctionDefinition", "parameters": { - "id": 581, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 578, + "id": 534, "name": "who", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6584:11:0", + "scope": 589, + "src": "5622:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8006,10 +7410,10 @@ "typeString": "address" }, "typeName": { - "id": 577, + "id": 533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6584:7:0", + "src": "5622:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8020,11 +7424,11 @@ }, { "constant": false, - "id": 580, + "id": 536, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6597:14:0", + "scope": 589, + "src": "5635:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8032,10 +7436,10 @@ "typeString": "string" }, "typeName": { - "id": 579, + "id": 535, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6597:6:0", + "src": "5635:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8045,26 +7449,26 @@ "visibility": "internal" } ], - "src": "6583:29:0" + "src": "5621:29:0" }, "payable": false, "returnParameters": { - "id": 585, + "id": 541, "nodeType": "ParameterList", "parameters": [], - "src": "6638:0:0" + "src": "5676:0:0" }, - "scope": 1194, - "src": "6558:339:0", + "scope": 1146, + "src": "5596:339:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 658, + "id": 614, "nodeType": "Block", - "src": "6980:107:0", + "src": "6018:107:0", "statements": [ { "expression": { @@ -8072,12 +7476,12 @@ "arguments": [ { "argumentTypes": null, - "id": 643, + "id": 599, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7006:3:0", + "referencedDeclaration": 591, + "src": "6044:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8089,26 +7493,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 644, + "id": 600, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7011:7:0", + "referencedDeclaration": 73, + "src": "6049:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 646, + "id": 602, "indexExpression": { "argumentTypes": null, - "id": 645, + "id": 601, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7019:3:0", + "referencedDeclaration": 591, + "src": "6057:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8119,21 +7523,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7011:12:0", + "src": "6049:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 647, + "id": 603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7011:18:0", + "referencedDeclaration": 80, + "src": "6049:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8141,12 +7545,12 @@ }, { "argumentTypes": null, - "id": 648, + "id": 604, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7031:8:0", + "referencedDeclaration": 593, + "src": "6069:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8168,18 +7572,18 @@ "typeString": "bool" } ], - "id": 642, + "id": 598, "name": "ChangePrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 272, - "src": "6990:15:0", + "referencedDeclaration": 228, + "src": "6028:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,bool,bool)" } }, - "id": 649, + "id": 605, "isConstant": false, "isLValue": false, "isPure": false, @@ -8187,20 +7591,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6990:50:0", + "src": "6028:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 650, + "id": 606, "nodeType": "ExpressionStatement", - "src": "6990:50:0" + "src": "6028:50:0" }, { "expression": { "argumentTypes": null, - "id": 656, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, @@ -8211,26 +7615,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 651, + "id": 607, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7050:7:0", + "referencedDeclaration": 73, + "src": "6088:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 653, + "id": 609, "indexExpression": { "argumentTypes": null, - "id": 652, + "id": 608, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7058:3:0", + "referencedDeclaration": 591, + "src": "6096:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8241,21 +7645,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7050:12:0", + "src": "6088:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 654, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7050:18:0", + "referencedDeclaration": 80, + "src": "6088:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8265,68 +7669,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 655, + "id": 611, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7071:8:0", + "referencedDeclaration": 593, + "src": "6109:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7050:29:0", + "src": "6088:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 657, + "id": 613, "nodeType": "ExpressionStatement", - "src": "7050:29:0" + "src": "6088:29:0" } ] }, "documentation": null, - "id": 659, + "id": 615, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 640, + "id": 596, "modifierName": { "argumentTypes": null, - "id": 639, + "id": 595, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6968:9:0", + "referencedDeclaration": 290, + "src": "6006:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6968:11:0" + "src": "6006:11:0" } ], "name": "changeAdminPrivilege", "nodeType": "FunctionDefinition", "parameters": { - "id": 638, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 635, + "id": 591, "name": "who", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6933:11:0", + "scope": 615, + "src": "5971:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8334,10 +7738,10 @@ "typeString": "address" }, "typeName": { - "id": 634, + "id": 590, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6933:7:0", + "src": "5971:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -8348,11 +7752,11 @@ }, { "constant": false, - "id": 637, + "id": 593, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6946:13:0", + "scope": 615, + "src": "5984:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8360,10 +7764,10 @@ "typeString": "bool" }, "typeName": { - "id": 636, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6946:4:0", + "src": "5984:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -8373,26 +7777,26 @@ "visibility": "internal" } ], - "src": "6932:28:0" + "src": "5970:28:0" }, "payable": false, "returnParameters": { - "id": 641, + "id": 597, "nodeType": "ParameterList", "parameters": [], - "src": "6980:0:0" + "src": "6018:0:0" }, - "scope": 1194, - "src": "6903:184:0", + "scope": 1146, + "src": "5941:184:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 685, + "id": 641, "nodeType": "Block", - "src": "7215:124:0", + "src": "6253:124:0", "statements": [ { "condition": { @@ -8401,7 +7805,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 671, + "id": 627, "isConstant": false, "isLValue": false, "isPure": false, @@ -8413,12 +7817,12 @@ "arguments": [ { "argumentTypes": null, - "id": 667, + "id": 623, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7235:7:0", + "referencedDeclaration": 617, + "src": "6273:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8432,20 +7836,20 @@ "typeString": "string memory" } ], - "id": 666, + "id": 622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7229:5:0", + "src": "6267:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 668, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -8453,13 +7857,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7229:14:0", + "src": "6267:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 669, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -8467,7 +7871,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7229:21:0", + "src": "6267:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8478,14 +7882,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 670, + "id": 626, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7253:2:0", + "src": "6291:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -8493,37 +7897,37 @@ }, "value": "21" }, - "src": "7229:26:0", + "src": "6267:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 675, + "id": 631, "nodeType": "IfStatement", - "src": "7225:40:0", + "src": "6263:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 672, + "id": 628, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7257:6:0", + "referencedDeclaration": 1505, + "src": "6295:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 673, + "id": 629, "isConstant": false, "isLValue": false, "isPure": false, @@ -8531,15 +7935,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7257:8:0", + "src": "6295:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 674, + "id": 630, "nodeType": "ExpressionStatement", - "src": "7257:8:0" + "src": "6295:8:0" } }, { @@ -8548,12 +7952,12 @@ "arguments": [ { "argumentTypes": null, - "id": 677, + "id": 633, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7294:4:0", + "referencedDeclaration": 56, + "src": "6332:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8561,12 +7965,12 @@ }, { "argumentTypes": null, - "id": 678, + "id": 634, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7300:7:0", + "referencedDeclaration": 617, + "src": "6338:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -8584,18 +7988,18 @@ "typeString": "string memory" } ], - "id": 676, + "id": 632, "name": "ChangeContractName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 278, - "src": "7275:18:0", + "referencedDeclaration": 234, + "src": "6313:18:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, - "id": 679, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, @@ -8603,32 +8007,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7275:33:0", + "src": "6313:33:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 680, + "id": 636, "nodeType": "ExpressionStatement", - "src": "7275:33:0" + "src": "6313:33:0" }, { "expression": { "argumentTypes": null, - "id": 683, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 681, + "id": 637, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7318:4:0", + "referencedDeclaration": 56, + "src": "6356:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -8638,68 +8042,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 682, + "id": 638, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7325:7:0", + "referencedDeclaration": 617, + "src": "6363:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "7318:14:0", + "src": "6356:14:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 684, + "id": 640, "nodeType": "ExpressionStatement", - "src": "7318:14:0" + "src": "6356:14:0" } ] }, "documentation": null, - "id": 686, + "id": 642, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 664, + "id": 620, "modifierName": { "argumentTypes": null, - "id": 663, + "id": 619, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "7203:9:0", + "referencedDeclaration": 290, + "src": "6241:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7203:11:0" + "src": "6241:11:0" } ], "name": "changeContractName", "nodeType": "FunctionDefinition", "parameters": { - "id": 662, + "id": 618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 661, + "id": 617, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 686, - "src": "7180:14:0", + "scope": 642, + "src": "6218:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -8707,10 +8111,10 @@ "typeString": "string" }, "typeName": { - "id": 660, + "id": 616, "name": "string", "nodeType": "ElementaryTypeName", - "src": "7180:6:0", + "src": "6218:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -8720,26 +8124,26 @@ "visibility": "internal" } ], - "src": "7179:16:0" + "src": "6217:16:0" }, "payable": false, "returnParameters": { - "id": 665, + "id": 621, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:0" + "src": "6253:0:0" }, - "scope": 1194, - "src": "7152:187:0", + "scope": 1146, + "src": "6190:187:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 722, + "id": 678, "nodeType": "Block", - "src": "7653:262:0", + "src": "6691:262:0", "statements": [ { "condition": { @@ -8748,19 +8152,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 695, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 693, + "id": 649, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7667:13:0", + "referencedDeclaration": 644, + "src": "6705:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8770,48 +8174,48 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 694, + "id": 650, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7683:22:0", + "referencedDeclaration": 69, + "src": "6721:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7667:38:0", + "src": "6705:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 699, + "id": 655, "nodeType": "IfStatement", - "src": "7663:52:0", + "src": "6701:52:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 696, + "id": 652, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7707:6:0", + "referencedDeclaration": 1505, + "src": "6745:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 697, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -8819,15 +8223,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7707:8:0", + "src": "6745:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 698, + "id": 654, "nodeType": "ExpressionStatement", - "src": "7707:8:0" + "src": "6745:8:0" } }, { @@ -8837,7 +8241,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 706, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, @@ -8847,12 +8251,12 @@ "arguments": [ { "argumentTypes": null, - "id": 702, + "id": 658, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7747:22:0", + "referencedDeclaration": 69, + "src": "6785:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8868,32 +8272,32 @@ ], "expression": { "argumentTypes": null, - "id": 700, + "id": 656, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7729:13:0", + "referencedDeclaration": 644, + "src": "6767:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 701, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "7729:17:0", + "referencedDeclaration": 1281, + "src": "6767:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 703, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, @@ -8901,7 +8305,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7729:41:0", + "src": "6767:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -8913,18 +8317,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 704, + "id": 660, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7773:4:0", + "referencedDeclaration": 1513, + "src": "6811:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 705, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -8932,43 +8336,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7773:12:0", + "src": "6811:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7729:56:0", + "src": "6767:56:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 710, + "id": 666, "nodeType": "IfStatement", - "src": "7725:70:0", + "src": "6763:70:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 707, + "id": 663, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7787:6:0", + "referencedDeclaration": 1505, + "src": "6825:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 708, + "id": 664, "isConstant": false, "isLValue": false, "isPure": false, @@ -8976,15 +8380,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7787:8:0", + "src": "6825:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 709, + "id": 665, "nodeType": "ExpressionStatement", - "src": "7787:8:0" + "src": "6825:8:0" } }, { @@ -8995,18 +8399,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 712, + "id": 668, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7826:4:0", + "referencedDeclaration": 1513, + "src": "6864:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 713, + "id": 669, "isConstant": false, "isLValue": false, "isPure": false, @@ -9014,7 +8418,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7826:12:0", + "src": "6864:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9022,12 +8426,12 @@ }, { "argumentTypes": null, - "id": 714, + "id": 670, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7840:13:0", + "referencedDeclaration": 67, + "src": "6878:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9035,12 +8439,12 @@ }, { "argumentTypes": null, - "id": 715, + "id": 671, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7855:13:0", + "referencedDeclaration": 644, + "src": "6893:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9062,18 +8466,18 @@ "typeString": "uint256" } ], - "id": 711, + "id": 667, "name": "ChangeSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 294, - "src": "7806:19:0", + "referencedDeclaration": 250, + "src": "6844:19:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 716, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -9081,32 +8485,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7806:63:0", + "src": "6844:63:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 717, + "id": 673, "nodeType": "ExpressionStatement", - "src": "7806:63:0" + "src": "6844:63:0" }, { "expression": { "argumentTypes": null, - "id": 720, + "id": 676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 718, + "id": 674, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7879:13:0", + "referencedDeclaration": 67, + "src": "6917:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9116,68 +8520,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 719, + "id": 675, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7895:13:0", + "referencedDeclaration": 644, + "src": "6933:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7879:29:0", + "src": "6917:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 721, + "id": 677, "nodeType": "ExpressionStatement", - "src": "7879:29:0" + "src": "6917:29:0" } ] }, "documentation": null, - "id": 723, + "id": 679, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 691, + "id": 647, "modifierName": { "argumentTypes": null, - "id": 690, + "id": 646, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "7641:9:0", + "referencedDeclaration": 30, + "src": "6679:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7641:11:0" + "src": "6679:11:0" } ], "name": "changeSharedExpenseAllocation", "nodeType": "FunctionDefinition", "parameters": { - "id": 689, + "id": 645, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 688, + "id": 644, "name": "newAllocation", "nodeType": "VariableDeclaration", - "scope": 723, - "src": "7611:21:0", + "scope": 679, + "src": "6649:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9185,10 +8589,10 @@ "typeString": "uint256" }, "typeName": { - "id": 687, + "id": 643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7611:7:0", + "src": "6649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9198,39 +8602,39 @@ "visibility": "internal" } ], - "src": "7610:23:0" + "src": "6648:23:0" }, "payable": false, "returnParameters": { - "id": 692, + "id": 648, "nodeType": "ParameterList", "parameters": [], - "src": "7653:0:0" + "src": "6691:0:0" }, - "scope": 1194, - "src": "7572:343:0", + "scope": 1146, + "src": "6610:343:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 771, + "id": 727, "nodeType": "Block", - "src": "8108:283:0", + "src": "7146:283:0", "statements": [ { "assignments": [ - 736 + 692 ], "declarations": [ { "constant": false, - "id": 736, + "id": 692, "name": "currentShares", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8118:21:0", + "scope": 728, + "src": "7156:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9238,10 +8642,10 @@ "typeString": "uint256" }, "typeName": { - "id": 735, + "id": 691, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8118:7:0", + "src": "7156:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9251,33 +8655,33 @@ "visibility": "internal" } ], - "id": 741, + "id": 697, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 737, + "id": 693, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8142:7:0", + "referencedDeclaration": 73, + "src": "7180:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 739, + "id": 695, "indexExpression": { "argumentTypes": null, - "id": 738, + "id": 694, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8150:3:0", + "referencedDeclaration": 681, + "src": "7188:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9288,28 +8692,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8142:12:0", + "src": "7180:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 740, + "id": 696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8142:19:0", + "referencedDeclaration": 82, + "src": "7180:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8118:43:0" + "src": "7156:43:0" }, { "condition": { @@ -9318,19 +8722,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 744, + "id": 700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 742, + "id": 698, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8175:6:0", + "referencedDeclaration": 683, + "src": "7213:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9340,48 +8744,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 743, + "id": 699, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8185:13:0", + "referencedDeclaration": 692, + "src": "7223:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8175:23:0", + "src": "7213:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 748, + "id": 704, "nodeType": "IfStatement", - "src": "8171:37:0", + "src": "7209:37:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 745, + "id": 701, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "8200:6:0", + "referencedDeclaration": 1505, + "src": "7238:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 746, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -9389,15 +8793,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8200:8:0", + "src": "7238:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 747, + "id": 703, "nodeType": "ExpressionStatement", - "src": "8200:8:0" + "src": "7238:8:0" } }, { @@ -9407,19 +8811,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 751, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 705, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8222:6:0", + "referencedDeclaration": 683, + "src": "7260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9429,27 +8833,27 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 750, + "id": 706, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8231:13:0", + "referencedDeclaration": 692, + "src": "7269:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8222:22:0", + "src": "7260:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 769, + "id": 725, "nodeType": "Block", - "src": "8317:68:0", + "src": "7355:68:0", "statements": [ { "expression": { @@ -9457,12 +8861,12 @@ "arguments": [ { "argumentTypes": null, - "id": 762, + "id": 718, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8343:3:0", + "referencedDeclaration": 681, + "src": "7381:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9473,12 +8877,12 @@ "arguments": [ { "argumentTypes": null, - "id": 765, + "id": 721, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8366:6:0", + "referencedDeclaration": 683, + "src": "7404:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9494,32 +8898,32 @@ ], "expression": { "argumentTypes": null, - "id": 763, + "id": 719, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8348:13:0", + "referencedDeclaration": 692, + "src": "7386:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 764, + "id": 720, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8348:17:0", + "referencedDeclaration": 1281, + "src": "7386:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 766, + "id": 722, "isConstant": false, "isLValue": false, "isPure": false, @@ -9527,7 +8931,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:25:0", + "src": "7386:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9545,18 +8949,18 @@ "typeString": "uint256" } ], - "id": 761, + "id": 717, "name": "removeShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 856, - "src": "8331:11:0", + "referencedDeclaration": 812, + "src": "7369:11:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 767, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -9564,25 +8968,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8331:43:0", + "src": "7369:43:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 724, "nodeType": "ExpressionStatement", - "src": "8331:43:0" + "src": "7369:43:0" } ] }, - "id": 770, + "id": 726, "nodeType": "IfStatement", - "src": "8218:167:0", + "src": "7256:167:0", "trueBody": { - "id": 760, + "id": 716, "nodeType": "Block", - "src": "8246:65:0", + "src": "7284:65:0", "statements": [ { "expression": { @@ -9590,12 +8994,12 @@ "arguments": [ { "argumentTypes": null, - "id": 753, + "id": 709, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8269:3:0", + "referencedDeclaration": 681, + "src": "7307:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9606,12 +9010,12 @@ "arguments": [ { "argumentTypes": null, - "id": 756, + "id": 712, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8285:13:0", + "referencedDeclaration": 692, + "src": "7323:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9627,32 +9031,32 @@ ], "expression": { "argumentTypes": null, - "id": 754, + "id": 710, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8274:6:0", + "referencedDeclaration": 683, + "src": "7312:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 755, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8274:10:0", + "referencedDeclaration": 1281, + "src": "7312:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 757, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -9660,7 +9064,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8274:25:0", + "src": "7312:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9678,18 +9082,18 @@ "typeString": "uint256" } ], - "id": 752, + "id": 708, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "8260:8:0", + "referencedDeclaration": 770, + "src": "7298:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 758, + "id": 714, "isConstant": false, "isLValue": false, "isPure": false, @@ -9697,15 +9101,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8260:40:0", + "src": "7298:40:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 759, + "id": 715, "nodeType": "ExpressionStatement", - "src": "8260:40:0" + "src": "7298:40:0" } ] } @@ -9713,77 +9117,77 @@ ] }, "documentation": null, - "id": 772, + "id": 728, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 730, + "id": 686, "modifierName": { "argumentTypes": null, - "id": 729, + "id": 685, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8078:9:0", + "referencedDeclaration": 290, + "src": "7116:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8078:11:0" + "src": "7116:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 732, + "id": 688, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8103:3:0", + "referencedDeclaration": 681, + "src": "7141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 733, + "id": 689, "modifierName": { "argumentTypes": null, - "id": 731, + "id": 687, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8090:12:0", + "referencedDeclaration": 305, + "src": "7128:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8090:17:0" + "src": "7128:17:0" } ], "name": "allocateShares", "nodeType": "FunctionDefinition", "parameters": { - "id": 728, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 725, + "id": 681, "name": "who", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8042:11:0", + "scope": 728, + "src": "7080:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9791,10 +9195,10 @@ "typeString": "address" }, "typeName": { - "id": 724, + "id": 680, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8042:7:0", + "src": "7080:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9805,11 +9209,11 @@ }, { "constant": false, - "id": 727, + "id": 683, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8055:14:0", + "scope": 728, + "src": "7093:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -9817,10 +9221,10 @@ "typeString": "uint256" }, "typeName": { - "id": 726, + "id": 682, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8055:7:0", + "src": "7093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9830,43 +9234,43 @@ "visibility": "internal" } ], - "src": "8041:29:0" + "src": "7079:29:0" }, "payable": false, "returnParameters": { - "id": 734, + "id": 690, "nodeType": "ParameterList", "parameters": [], - "src": "8108:0:0" + "src": "7146:0:0" }, - "scope": 1194, - "src": "8018:373:0", + "scope": 1146, + "src": "7056:373:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 813, + "id": 769, "nodeType": "Block", - "src": "8532:169:0", + "src": "7570:169:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 789, + "id": 745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 784, + "id": 740, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8542:11:0", + "referencedDeclaration": 58, + "src": "7580:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9879,12 +9283,12 @@ "arguments": [ { "argumentTypes": null, - "id": 787, + "id": 743, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8572:6:0", + "referencedDeclaration": 732, + "src": "7610:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -9900,32 +9304,32 @@ ], "expression": { "argumentTypes": null, - "id": 785, + "id": 741, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8556:11:0", + "referencedDeclaration": 58, + "src": "7594:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 786, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8556:15:0", + "referencedDeclaration": 1305, + "src": "7594:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 788, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, @@ -9933,26 +9337,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8556:23:0", + "src": "7594:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8542:37:0", + "src": "7580:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 790, + "id": 746, "nodeType": "ExpressionStatement", - "src": "8542:37:0" + "src": "7580:37:0" }, { "expression": { "argumentTypes": null, - "id": 802, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, @@ -9963,26 +9367,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 791, + "id": 747, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8589:7:0", + "referencedDeclaration": 73, + "src": "7627:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 793, + "id": 749, "indexExpression": { "argumentTypes": null, - "id": 792, + "id": 748, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8597:3:0", + "referencedDeclaration": 730, + "src": "7635:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -9993,21 +9397,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8589:12:0", + "src": "7627:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 794, + "id": 750, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8589:19:0", + "referencedDeclaration": 82, + "src": "7627:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10020,12 +9424,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 756, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8635:6:0", + "referencedDeclaration": 732, + "src": "7673:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10045,26 +9449,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 795, + "id": 751, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8611:7:0", + "referencedDeclaration": 73, + "src": "7649:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 797, + "id": 753, "indexExpression": { "argumentTypes": null, - "id": 796, + "id": 752, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8619:3:0", + "referencedDeclaration": 730, + "src": "7657:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10075,41 +9479,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8611:12:0", + "src": "7649:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 798, + "id": 754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8611:19:0", + "referencedDeclaration": 82, + "src": "7649:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 799, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8611:23:0", + "referencedDeclaration": 1305, + "src": "7649:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 801, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -10117,21 +9521,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8611:31:0", + "src": "7649:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8589:53:0", + "src": "7627:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 803, + "id": 759, "nodeType": "ExpressionStatement", - "src": "8589:53:0" + "src": "7627:53:0" }, { "expression": { @@ -10139,12 +9543,12 @@ "arguments": [ { "argumentTypes": null, - "id": 805, + "id": 761, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8661:3:0", + "referencedDeclaration": 730, + "src": "7699:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10152,12 +9556,12 @@ }, { "argumentTypes": null, - "id": 806, + "id": 762, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8666:6:0", + "referencedDeclaration": 732, + "src": "7704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10169,26 +9573,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 807, + "id": 763, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8674:7:0", + "referencedDeclaration": 73, + "src": "7712:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 809, + "id": 765, "indexExpression": { "argumentTypes": null, - "id": 808, + "id": 764, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8682:3:0", + "referencedDeclaration": 730, + "src": "7720:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10199,21 +9603,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8674:12:0", + "src": "7712:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 810, + "id": 766, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8674:19:0", + "referencedDeclaration": 82, + "src": "7712:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10235,18 +9639,18 @@ "typeString": "uint256" } ], - "id": 804, + "id": 760, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "8652:8:0", + "referencedDeclaration": 212, + "src": "7690:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 811, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -10254,90 +9658,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8652:42:0", + "src": "7690:42:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 812, + "id": 768, "nodeType": "ExpressionStatement", - "src": "8652:42:0" + "src": "7690:42:0" } ] }, "documentation": null, - "id": 814, + "id": 770, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 779, + "id": 735, "modifierName": { "argumentTypes": null, - "id": 778, + "id": 734, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8502:9:0", + "referencedDeclaration": 290, + "src": "7540:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8502:11:0" + "src": "7540:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 781, + "id": 737, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8527:3:0", + "referencedDeclaration": 730, + "src": "7565:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 782, + "id": 738, "modifierName": { "argumentTypes": null, - "id": 780, + "id": 736, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8514:12:0", + "referencedDeclaration": 305, + "src": "7552:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8514:17:0" + "src": "7552:17:0" } ], "name": "addShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 777, + "id": 733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 730, "name": "who", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8466:11:0", + "scope": 770, + "src": "7504:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10345,10 +9749,10 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8466:7:0", + "src": "7504:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10359,11 +9763,11 @@ }, { "constant": false, - "id": 776, + "id": 732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8479:14:0", + "scope": 770, + "src": "7517:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10371,10 +9775,10 @@ "typeString": "uint256" }, "typeName": { - "id": 775, + "id": 731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8479:7:0", + "src": "7517:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10384,43 +9788,43 @@ "visibility": "internal" } ], - "src": "8465:29:0" + "src": "7503:29:0" }, "payable": false, "returnParameters": { - "id": 783, + "id": 739, "nodeType": "ParameterList", "parameters": [], - "src": "8532:0:0" + "src": "7570:0:0" }, - "scope": 1194, - "src": "8448:253:0", + "scope": 1146, + "src": "7486:253:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 855, + "id": 811, "nodeType": "Block", - "src": "8845:172:0", + "src": "7883:172:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 831, + "id": 787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 826, + "id": 782, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8855:11:0", + "referencedDeclaration": 58, + "src": "7893:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10433,12 +9837,12 @@ "arguments": [ { "argumentTypes": null, - "id": 829, + "id": 785, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8885:6:0", + "referencedDeclaration": 774, + "src": "7923:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10454,32 +9858,32 @@ ], "expression": { "argumentTypes": null, - "id": 827, + "id": 783, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8869:11:0", + "referencedDeclaration": 58, + "src": "7907:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 828, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8869:15:0", + "referencedDeclaration": 1281, + "src": "7907:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 830, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -10487,26 +9891,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8869:23:0", + "src": "7907:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8855:37:0", + "src": "7893:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 832, + "id": 788, "nodeType": "ExpressionStatement", - "src": "8855:37:0" + "src": "7893:37:0" }, { "expression": { "argumentTypes": null, - "id": 844, + "id": 800, "isConstant": false, "isLValue": false, "isPure": false, @@ -10517,26 +9921,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 833, + "id": 789, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8902:7:0", + "referencedDeclaration": 73, + "src": "7940:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 835, + "id": 791, "indexExpression": { "argumentTypes": null, - "id": 834, + "id": 790, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8910:3:0", + "referencedDeclaration": 772, + "src": "7948:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10547,21 +9951,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8902:12:0", + "src": "7940:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 836, + "id": 792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8902:19:0", + "referencedDeclaration": 82, + "src": "7940:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10574,12 +9978,12 @@ "arguments": [ { "argumentTypes": null, - "id": 842, + "id": 798, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8948:6:0", + "referencedDeclaration": 774, + "src": "7986:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10599,26 +10003,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 837, + "id": 793, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8924:7:0", + "referencedDeclaration": 73, + "src": "7962:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 839, + "id": 795, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 794, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8932:3:0", + "referencedDeclaration": 772, + "src": "7970:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10629,41 +10033,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8924:12:0", + "src": "7962:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 840, + "id": 796, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8924:19:0", + "referencedDeclaration": 82, + "src": "7962:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 841, + "id": 797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8924:23:0", + "referencedDeclaration": 1281, + "src": "7962:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 843, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -10671,21 +10075,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8924:31:0", + "src": "7962:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8902:53:0", + "src": "7940:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 845, + "id": 801, "nodeType": "ExpressionStatement", - "src": "8902:53:0" + "src": "7940:53:0" }, { "expression": { @@ -10693,12 +10097,12 @@ "arguments": [ { "argumentTypes": null, - "id": 847, + "id": 803, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8977:3:0", + "referencedDeclaration": 772, + "src": "8015:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10706,12 +10110,12 @@ }, { "argumentTypes": null, - "id": 848, + "id": 804, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8982:6:0", + "referencedDeclaration": 774, + "src": "8020:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10723,26 +10127,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 849, + "id": 805, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8990:7:0", + "referencedDeclaration": 73, + "src": "8028:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 851, + "id": 807, "indexExpression": { "argumentTypes": null, - "id": 850, + "id": 806, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8998:3:0", + "referencedDeclaration": 772, + "src": "8036:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10753,21 +10157,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:12:0", + "src": "8028:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 852, + "id": 808, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8990:19:0", + "referencedDeclaration": 82, + "src": "8028:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10789,18 +10193,18 @@ "typeString": "uint256" } ], - "id": 846, + "id": 802, "name": "RemoveShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 264, - "src": "8965:11:0", + "referencedDeclaration": 220, + "src": "8003:11:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 853, + "id": 809, "isConstant": false, "isLValue": false, "isPure": false, @@ -10808,90 +10212,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8965:45:0", + "src": "8003:45:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 854, + "id": 810, "nodeType": "ExpressionStatement", - "src": "8965:45:0" + "src": "8003:45:0" } ] }, "documentation": null, - "id": 856, + "id": 812, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 821, + "id": 777, "modifierName": { "argumentTypes": null, - "id": 820, + "id": 776, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8815:9:0", + "referencedDeclaration": 290, + "src": "7853:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8815:11:0" + "src": "7853:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 823, + "id": 779, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8840:3:0", + "referencedDeclaration": 772, + "src": "7878:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 824, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 822, + "id": 778, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8827:12:0", + "referencedDeclaration": 305, + "src": "7865:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8827:17:0" + "src": "7865:17:0" } ], "name": "removeShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 819, + "id": 775, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 816, + "id": 772, "name": "who", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8779:11:0", + "scope": 812, + "src": "7817:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10899,10 +10303,10 @@ "typeString": "address" }, "typeName": { - "id": 815, + "id": 771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8779:7:0", + "src": "7817:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -10913,11 +10317,11 @@ }, { "constant": false, - "id": 818, + "id": 774, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8792:14:0", + "scope": 812, + "src": "7830:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10925,10 +10329,10 @@ "typeString": "uint256" }, "typeName": { - "id": 817, + "id": 773, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8792:7:0", + "src": "7830:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10938,39 +10342,39 @@ "visibility": "internal" } ], - "src": "8778:29:0" + "src": "7816:29:0" }, "payable": false, "returnParameters": { - "id": 825, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "8845:0:0" + "src": "7883:0:0" }, - "scope": 1194, - "src": "8758:259:0", + "scope": 1146, + "src": "7796:259:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 923, + "id": 879, "nodeType": "Block", - "src": "9430:392:0", + "src": "8468:392:0", "statements": [ { "assignments": [ - 866 + 822 ], "declarations": [ { "constant": false, - "id": 866, + "id": 822, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9440:16:0", + "scope": 880, + "src": "8478:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -10978,10 +10382,10 @@ "typeString": "uint256" }, "typeName": { - "id": 865, + "id": 821, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9440:7:0", + "src": "8478:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -10991,7 +10395,7 @@ "visibility": "internal" } ], - "id": 871, + "id": 827, "initialValue": { "argumentTypes": null, "arguments": [ @@ -10999,18 +10403,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 868, + "id": 824, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9492:3:0", + "referencedDeclaration": 1500, + "src": "8530:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 869, + "id": 825, "isConstant": false, "isLValue": false, "isPure": false, @@ -11018,7 +10422,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9492:10:0", + "src": "8530:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11032,18 +10436,18 @@ "typeString": "address" } ], - "id": 867, + "id": 823, "name": "calculateTotalWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1113, - "src": "9459:32:0", + "referencedDeclaration": 1066, + "src": "8497:32:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 870, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -11051,14 +10455,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9459:44:0", + "src": "8497:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9440:63:0" + "src": "8478:63:0" }, { "condition": { @@ -11067,19 +10471,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 881, + "id": 837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 872, + "id": 828, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9517:6:0", + "referencedDeclaration": 814, + "src": "8555:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11096,34 +10500,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 875, + "id": 831, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9539:7:0", + "referencedDeclaration": 73, + "src": "8577:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 878, + "id": 834, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 876, + "id": 832, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9547:3:0", + "referencedDeclaration": 1500, + "src": "8585:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 877, + "id": 833, "isConstant": false, "isLValue": false, "isPure": false, @@ -11131,7 +10535,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9547:10:0", + "src": "8585:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11142,21 +10546,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9539:19:0", + "src": "8577:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 879, + "id": 835, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9539:29:0", + "referencedDeclaration": 84, + "src": "8577:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11172,32 +10576,32 @@ ], "expression": { "argumentTypes": null, - "id": 873, + "id": 829, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "9526:8:0", + "referencedDeclaration": 822, + "src": "8564:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 874, + "id": 830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "9526:12:0", + "referencedDeclaration": 1281, + "src": "8564:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 880, + "id": 836, "isConstant": false, "isLValue": false, "isPure": false, @@ -11205,43 +10609,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9526:43:0", + "src": "8564:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9517:52:0", + "src": "8555:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 885, + "id": 841, "nodeType": "IfStatement", - "src": "9513:66:0", + "src": "8551:66:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 882, + "id": 838, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "9571:6:0", + "referencedDeclaration": 1505, + "src": "8609:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 883, + "id": 839, "isConstant": false, "isLValue": false, "isPure": false, @@ -11249,21 +10653,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9571:8:0", + "src": "8609:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 884, + "id": 840, "nodeType": "ExpressionStatement", - "src": "9571:8:0" + "src": "8609:8:0" } }, { "expression": { "argumentTypes": null, - "id": 899, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -11274,34 +10678,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 886, + "id": 842, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9598:7:0", + "referencedDeclaration": 73, + "src": "8636:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 889, + "id": 845, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 887, + "id": 843, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9606:3:0", + "referencedDeclaration": 1500, + "src": "8644:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 888, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -11309,7 +10713,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9606:10:0", + "src": "8644:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11320,21 +10724,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9598:19:0", + "src": "8636:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 890, + "id": 846, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9598:29:0", + "referencedDeclaration": 84, + "src": "8636:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11347,12 +10751,12 @@ "arguments": [ { "argumentTypes": null, - "id": 897, + "id": 853, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9664:6:0", + "referencedDeclaration": 814, + "src": "8702:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11372,34 +10776,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 891, + "id": 847, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9630:7:0", + "referencedDeclaration": 73, + "src": "8668:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 894, + "id": 850, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 892, + "id": 848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9638:3:0", + "referencedDeclaration": 1500, + "src": "8676:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 893, + "id": 849, "isConstant": false, "isLValue": false, "isPure": false, @@ -11407,7 +10811,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9638:10:0", + "src": "8676:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11418,41 +10822,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9630:19:0", + "src": "8668:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 895, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9630:29:0", + "referencedDeclaration": 84, + "src": "8668:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 896, + "id": 852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9630:33:0", + "referencedDeclaration": 1305, + "src": "8668:33:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 898, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, @@ -11460,38 +10864,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9630:41:0", + "src": "8668:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9598:73:0", + "src": "8636:73:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 900, + "id": 856, "nodeType": "ExpressionStatement", - "src": "9598:73:0" + "src": "8636:73:0" }, { "expression": { "argumentTypes": null, - "id": 906, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 901, + "id": 857, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9681:14:0", + "referencedDeclaration": 60, + "src": "8719:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11504,12 +10908,12 @@ "arguments": [ { "argumentTypes": null, - "id": 904, + "id": 860, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9717:6:0", + "referencedDeclaration": 814, + "src": "8755:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11525,32 +10929,32 @@ ], "expression": { "argumentTypes": null, - "id": 902, + "id": 858, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9698:14:0", + "referencedDeclaration": 60, + "src": "8736:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 903, + "id": 859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9698:18:0", + "referencedDeclaration": 1305, + "src": "8736:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 905, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -11558,21 +10962,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9698:26:0", + "src": "8736:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:43:0", + "src": "8719:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 907, + "id": 863, "nodeType": "ExpressionStatement", - "src": "9681:43:0" + "src": "8719:43:0" }, { "expression": { @@ -11580,12 +10984,12 @@ "arguments": [ { "argumentTypes": null, - "id": 913, + "id": 869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9754:6:0", + "referencedDeclaration": 814, + "src": "8792:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11603,18 +11007,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 908, + "id": 864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9734:3:0", + "referencedDeclaration": 1500, + "src": "8772:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 911, + "id": 867, "isConstant": false, "isLValue": false, "isPure": false, @@ -11622,13 +11026,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:10:0", + "src": "8772:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 912, + "id": 868, "isConstant": false, "isLValue": false, "isPure": false, @@ -11636,13 +11040,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:19:0", + "src": "8772:19:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 914, + "id": 870, "isConstant": false, "isLValue": false, "isPure": false, @@ -11650,15 +11054,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9734:27:0", + "src": "8772:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 915, + "id": 871, "nodeType": "ExpressionStatement", - "src": "9734:27:0" + "src": "8772:27:0" }, { "expression": { @@ -11668,18 +11072,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 873, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9780:3:0", + "referencedDeclaration": 1500, + "src": "8818:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 918, + "id": 874, "isConstant": false, "isLValue": false, "isPure": false, @@ -11687,7 +11091,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9780:10:0", + "src": "8818:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11695,12 +11099,12 @@ }, { "argumentTypes": null, - "id": 919, + "id": 875, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9792:6:0", + "referencedDeclaration": 814, + "src": "8830:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11708,12 +11112,12 @@ }, { "argumentTypes": null, - "id": 920, + "id": 876, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9800:14:0", + "referencedDeclaration": 60, + "src": "8838:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11735,18 +11139,18 @@ "typeString": "uint256" } ], - "id": 916, + "id": 872, "name": "Withdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "9771:8:0", + "referencedDeclaration": 194, + "src": "8809:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 921, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -11754,20 +11158,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9771:44:0", + "src": "8809:44:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 922, + "id": 878, "nodeType": "ExpressionStatement", - "src": "9771:44:0" + "src": "8809:44:0" } ] }, "documentation": null, - "id": 924, + "id": 880, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -11778,18 +11182,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 861, + "id": 817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9418:3:0", + "referencedDeclaration": 1500, + "src": "8456:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 862, + "id": 818, "isConstant": false, "isLValue": false, "isPure": false, @@ -11797,44 +11201,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9418:10:0", + "src": "8456:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 863, + "id": 819, "modifierName": { "argumentTypes": null, - "id": 860, + "id": 816, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9405:12:0", + "referencedDeclaration": 305, + "src": "8443:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9405:24:0" + "src": "8443:24:0" } ], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 859, + "id": 815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 858, + "id": 814, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9382:14:0", + "scope": 880, + "src": "8420:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11842,10 +11246,10 @@ "typeString": "uint256" }, "typeName": { - "id": 857, + "id": 813, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9382:7:0", + "src": "8420:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11855,39 +11259,39 @@ "visibility": "internal" } ], - "src": "9381:16:0" + "src": "8419:16:0" }, "payable": false, "returnParameters": { - "id": 864, + "id": 820, "nodeType": "ParameterList", "parameters": [], - "src": "9430:0:0" + "src": "8468:0:0" }, - "scope": 1194, - "src": "9364:458:0", + "scope": 1146, + "src": "8402:458:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1011, + "id": 964, "nodeType": "Block", - "src": "9958:503:0", + "src": "8997:458:0", "statements": [ { "assignments": [ - 936 + 892 ], "declarations": [ { "constant": false, - "id": 936, + "id": 892, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9968:16:0", + "scope": 965, + "src": "9007:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -11895,10 +11299,10 @@ "typeString": "uint256" }, "typeName": { - "id": 935, + "id": 891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9968:7:0", + "src": "9007:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -11908,7 +11312,7 @@ "visibility": "internal" } ], - "id": 942, + "id": 898, "initialValue": { "argumentTypes": null, "arguments": [ @@ -11916,18 +11320,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 938, + "id": 894, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10025:3:0", + "referencedDeclaration": 1500, + "src": "9064:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 939, + "id": 895, "isConstant": false, "isLValue": false, "isPure": false, @@ -11935,7 +11339,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10025:10:0", + "src": "9064:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11943,12 +11347,12 @@ }, { "argumentTypes": null, - "id": 940, + "id": 896, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10037:5:0", + "referencedDeclaration": 884, + "src": "9076:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -11966,18 +11370,18 @@ "typeString": "address" } ], - "id": 937, + "id": 893, "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "9987:37:0", + "referencedDeclaration": 1116, + "src": "9026:37:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 941, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -11985,14 +11389,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9987:56:0", + "src": "9026:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9968:75:0" + "src": "9007:75:0" }, { "condition": { @@ -12001,19 +11405,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 954, + "id": 910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 943, + "id": 899, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10057:6:0", + "referencedDeclaration": 882, + "src": "9096:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12032,34 +11436,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 946, + "id": 902, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10079:7:0", + "referencedDeclaration": 73, + "src": "9118:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 949, + "id": 905, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 903, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10087:3:0", + "referencedDeclaration": 1500, + "src": "9126:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 948, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, @@ -12067,7 +11471,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10087:10:0", + "src": "9126:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12078,35 +11482,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:19:0", + "src": "9118:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 950, + "id": 906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10079:35:0", + "referencedDeclaration": 90, + "src": "9118:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 952, + "id": 908, "indexExpression": { "argumentTypes": null, - "id": 951, + "id": 907, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10115:5:0", + "referencedDeclaration": 884, + "src": "9154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12117,7 +11521,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:42:0", + "src": "9118:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12133,32 +11537,32 @@ ], "expression": { "argumentTypes": null, - "id": 944, + "id": 900, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "10066:8:0", + "referencedDeclaration": 892, + "src": "9105:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 945, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "10066:12:0", + "referencedDeclaration": 1281, + "src": "9105:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 953, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -12166,43 +11570,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10066:56:0", + "src": "9105:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10057:65:0", + "src": "9096:65:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 958, + "id": 914, "nodeType": "IfStatement", - "src": "10053:79:0", + "src": "9092:79:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 955, + "id": 911, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10124:6:0", + "referencedDeclaration": 1505, + "src": "9163:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 956, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -12210,21 +11614,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10124:8:0", + "src": "9163:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 957, + "id": 913, "nodeType": "ExpressionStatement", - "src": "10124:8:0" + "src": "9163:8:0" } }, { "expression": { "argumentTypes": null, - "id": 976, + "id": 932, "isConstant": false, "isLValue": false, "isPure": false, @@ -12237,34 +11641,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 959, + "id": 915, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10143:7:0", + "referencedDeclaration": 73, + "src": "9182:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 962, + "id": 918, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 960, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10151:3:0", + "referencedDeclaration": 1500, + "src": "9190:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 961, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -12272,7 +11676,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10151:10:0", + "src": "9190:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12283,35 +11687,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10143:19:0", + "src": "9182:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 963, + "id": 919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10143:35:0", + "referencedDeclaration": 90, + "src": "9182:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 965, + "id": 921, "indexExpression": { "argumentTypes": null, - "id": 964, + "id": 920, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10179:5:0", + "referencedDeclaration": 884, + "src": "9218:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12322,7 +11726,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10143:42:0", + "src": "9182:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12335,12 +11739,12 @@ "arguments": [ { "argumentTypes": null, - "id": 974, + "id": 930, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10235:6:0", + "referencedDeclaration": 882, + "src": "9274:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12362,34 +11766,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 966, + "id": 922, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10188:7:0", + "referencedDeclaration": 73, + "src": "9227:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 969, + "id": 925, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 923, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10196:3:0", + "referencedDeclaration": 1500, + "src": "9235:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 968, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -12397,7 +11801,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10196:10:0", + "src": "9235:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12408,35 +11812,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:19:0", + "src": "9227:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 970, + "id": 926, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10188:35:0", + "referencedDeclaration": 90, + "src": "9227:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 972, + "id": 928, "indexExpression": { "argumentTypes": null, - "id": 971, + "id": 927, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10224:5:0", + "referencedDeclaration": 884, + "src": "9263:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12447,27 +11851,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:42:0", + "src": "9227:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 973, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10188:46:0", + "referencedDeclaration": 1305, + "src": "9227:46:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 975, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -12475,81 +11879,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10188:54:0", + "src": "9227:54:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10143:99:0", + "src": "9182:99:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 977, + "id": 933, "nodeType": "ExpressionStatement", - "src": "10143:99:0" + "src": "9182:99:0" }, { "expression": { "argumentTypes": null, - "id": 989, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10252:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "id": 979, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10259:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10252:13:0", + "id": 934, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9291:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 936, + "indexExpression": { + "argumentTypes": null, + "id": 935, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9298:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 981, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10252:28:0", + "nodeType": "IndexAccess", + "src": "9291:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12562,12 +11950,12 @@ "arguments": [ { "argumentTypes": null, - "id": 987, + "id": 941, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10316:6:0", + "referencedDeclaration": 882, + "src": "9325:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12583,75 +11971,59 @@ ], "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 982, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10283:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 984, - "indexExpression": { - "argumentTypes": null, - "id": 983, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10283:13:0", + "id": 937, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9307:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 939, + "indexExpression": { + "argumentTypes": null, + "id": 938, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9314:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 985, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10283:28:0", + "nodeType": "IndexAccess", + "src": "9307:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 986, + "id": 940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10283:32:0", + "referencedDeclaration": 1305, + "src": "9307:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 988, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -12659,21 +12031,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10283:40:0", + "src": "9307:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10252:71:0", + "src": "9291:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 990, + "id": 944, "nodeType": "ExpressionStatement", - "src": "10252:71:0" + "src": "9291:41:0" }, { "expression": { @@ -12683,18 +12055,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 995, + "id": 949, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10355:3:0", + "referencedDeclaration": 1500, + "src": "9364:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 996, + "id": 950, "isConstant": false, "isLValue": false, "isPure": false, @@ -12702,7 +12074,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10355:10:0", + "src": "9364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12710,12 +12082,12 @@ }, { "argumentTypes": null, - "id": 997, + "id": 951, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10367:6:0", + "referencedDeclaration": 882, + "src": "9376:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12738,12 +12110,12 @@ "arguments": [ { "argumentTypes": null, - "id": 992, + "id": 946, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10339:5:0", + "referencedDeclaration": 884, + "src": "9348:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12757,18 +12129,18 @@ "typeString": "address" } ], - "id": 991, + "id": 945, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "10333:5:0", + "referencedDeclaration": 1213, + "src": "9342:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 993, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, @@ -12776,27 +12148,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:12:0", + "src": "9342:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 994, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 1212, - "src": "10333:21:0", + "referencedDeclaration": 1164, + "src": "9342:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 998, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -12804,15 +12176,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:41:0", + "src": "9342:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 999, + "id": 953, "nodeType": "ExpressionStatement", - "src": "10333:41:0" + "src": "9342:41:0" }, { "expression": { @@ -12822,18 +12194,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1001, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10398:3:0", + "referencedDeclaration": 1500, + "src": "9407:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1002, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -12841,7 +12213,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10398:10:0", + "src": "9407:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12849,12 +12221,12 @@ }, { "argumentTypes": null, - "id": 1003, + "id": 957, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10410:6:0", + "referencedDeclaration": 882, + "src": "9419:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12862,12 +12234,12 @@ }, { "argumentTypes": null, - "id": 1004, + "id": 958, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10418:5:0", + "referencedDeclaration": 884, + "src": "9427:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -12875,55 +12247,39 @@ }, { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1005, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10425:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1007, - "indexExpression": { - "argumentTypes": null, - "id": 1006, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10425:13:0", + "id": 959, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9434:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "id": 960, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9441:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1008, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10425:28:0", + "nodeType": "IndexAccess", + "src": "9434:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -12949,18 +12305,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 954, "name": "TokenWithdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "10384:13:0", + "referencedDeclaration": 204, + "src": "9393:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,address,uint256)" } }, - "id": 1009, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -12968,20 +12324,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10384:70:0", + "src": "9393:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1010, + "id": 963, "nodeType": "ExpressionStatement", - "src": "10384:70:0" + "src": "9393:55:0" } ] }, "documentation": null, - "id": 1012, + "id": 965, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -12992,18 +12348,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 931, + "id": 887, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9946:3:0", + "referencedDeclaration": 1500, + "src": "8985:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 932, + "id": 888, "isConstant": false, "isLValue": false, "isPure": false, @@ -13011,44 +12367,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9946:10:0", + "src": "8985:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 933, + "id": 889, "modifierName": { "argumentTypes": null, - "id": 930, + "id": 886, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9933:12:0", + "referencedDeclaration": 305, + "src": "8972:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9933:24:0" + "src": "8972:24:0" } ], "name": "withdrawToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 929, + "id": 885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 926, + "id": 882, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9895:14:0", + "scope": 965, + "src": "8934:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13056,10 +12412,10 @@ "typeString": "uint256" }, "typeName": { - "id": 925, + "id": 881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9895:7:0", + "src": "8934:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13070,11 +12426,11 @@ }, { "constant": false, - "id": 928, + "id": 884, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9911:13:0", + "scope": 965, + "src": "8950:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13082,10 +12438,10 @@ "typeString": "address" }, "typeName": { - "id": 927, + "id": 883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9911:7:0", + "src": "8950:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13095,26 +12451,26 @@ "visibility": "internal" } ], - "src": "9894:31:0" + "src": "8933:31:0" }, "payable": false, "returnParameters": { - "id": 934, + "id": 890, "nodeType": "ParameterList", "parameters": [], - "src": "9958:0:0" + "src": "8997:0:0" }, - "scope": 1194, - "src": "9872:589:0", + "scope": 1146, + "src": "8911:544:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1050, + "id": 1003, "nodeType": "Block", - "src": "10726:267:0", + "src": "9720:267:0", "statements": [ { "condition": { @@ -13123,19 +12479,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1024, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1021, + "id": 974, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10740:6:0", + "referencedDeclaration": 967, + "src": "9734:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13148,18 +12504,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1022, + "id": 975, "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "10749:39:0", + "referencedDeclaration": 1127, + "src": "9743:39:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1023, + "id": 976, "isConstant": false, "isLValue": false, "isPure": false, @@ -13167,43 +12523,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10749:41:0", + "src": "9743:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10740:50:0", + "src": "9734:50:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1028, + "id": 981, "nodeType": "IfStatement", - "src": "10736:64:0", + "src": "9730:64:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 1025, + "id": 978, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10792:6:0", + "referencedDeclaration": 1505, + "src": "9786:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1026, + "id": 979, "isConstant": false, "isLValue": false, "isPure": false, @@ -13211,33 +12567,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10792:8:0", + "src": "9786:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1027, + "id": 980, "nodeType": "ExpressionStatement", - "src": "10792:8:0" + "src": "9786:8:0" } }, { "expression": { "argumentTypes": null, - "id": 1034, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1029, + "id": 982, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10819:22:0", + "referencedDeclaration": 69, + "src": "9813:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13250,12 +12606,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1032, + "id": 985, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10871:6:0", + "referencedDeclaration": 967, + "src": "9865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13271,32 +12627,32 @@ ], "expression": { "argumentTypes": null, - "id": 1030, + "id": 983, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10844:22:0", + "referencedDeclaration": 69, + "src": "9838:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1031, + "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10844:26:0", + "referencedDeclaration": 1305, + "src": "9838:26:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1033, + "id": 986, "isConstant": false, "isLValue": false, "isPure": false, @@ -13304,21 +12660,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10844:34:0", + "src": "9838:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10819:59:0", + "src": "9813:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1035, + "id": 988, "nodeType": "ExpressionStatement", - "src": "10819:59:0" + "src": "9813:59:0" }, { "expression": { @@ -13326,12 +12682,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1039, + "id": 992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10900:6:0", + "referencedDeclaration": 967, + "src": "9894:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13347,18 +12703,18 @@ ], "expression": { "argumentTypes": null, - "id": 1036, + "id": 989, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10888:2:0", + "referencedDeclaration": 969, + "src": "9882:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1038, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -13366,13 +12722,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10888:11:0", + "src": "9882:11:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1040, + "id": 993, "isConstant": false, "isLValue": false, "isPure": false, @@ -13380,15 +12736,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10888:19:0", + "src": "9882:19:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 994, "nodeType": "ExpressionStatement", - "src": "10888:19:0" + "src": "9882:19:0" }, { "expression": { @@ -13398,18 +12754,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1043, + "id": 996, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10939:3:0", + "referencedDeclaration": 1500, + "src": "9933:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1044, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, @@ -13417,7 +12773,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10939:10:0", + "src": "9933:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13425,12 +12781,12 @@ }, { "argumentTypes": null, - "id": 1045, + "id": 998, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10951:2:0", + "referencedDeclaration": 969, + "src": "9945:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13438,12 +12794,12 @@ }, { "argumentTypes": null, - "id": 1046, + "id": 999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10955:6:0", + "referencedDeclaration": 967, + "src": "9949:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13451,12 +12807,12 @@ }, { "argumentTypes": null, - "id": 1047, + "id": 1000, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10963:22:0", + "referencedDeclaration": 69, + "src": "9957:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13482,18 +12838,18 @@ "typeString": "uint256" } ], - "id": 1042, + "id": 995, "name": "WithdrawSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 304, - "src": "10917:21:0", + "referencedDeclaration": 260, + "src": "9911:21:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 1048, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -13501,57 +12857,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10917:69:0", + "src": "9911:69:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "10917:69:0" + "src": "9911:69:0" } ] }, "documentation": null, - "id": 1051, + "id": 1004, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 1019, + "id": 972, "modifierName": { "argumentTypes": null, - "id": 1018, + "id": 971, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "10714:9:0", + "referencedDeclaration": 290, + "src": "9708:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "10714:11:0" + "src": "9708:11:0" } ], "name": "withdrawSharedExpense", "nodeType": "FunctionDefinition", "parameters": { - "id": 1017, + "id": 970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1014, + "id": 967, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10679:14:0", + "scope": 1004, + "src": "9673:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13559,10 +12915,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1013, + "id": 966, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10679:7:0", + "src": "9673:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13573,11 +12929,11 @@ }, { "constant": false, - "id": 1016, + "id": 969, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10695:10:0", + "scope": 1004, + "src": "9689:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13585,10 +12941,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10695:7:0", + "src": "9689:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -13598,39 +12954,39 @@ "visibility": "internal" } ], - "src": "10678:28:0" + "src": "9672:28:0" }, "payable": false, "returnParameters": { - "id": 1020, + "id": 973, "nodeType": "ParameterList", "parameters": [], - "src": "10726:0:0" + "src": "9720:0:0" }, - "scope": 1194, - "src": "10648:345:0", + "scope": 1146, + "src": "9642:345:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1112, + "id": 1065, "nodeType": "Block", - "src": "11276:651:0", + "src": "10270:651:0", "statements": [ { "assignments": [ - 1062 + 1015 ], "declarations": [ { "constant": false, - "id": 1062, + "id": 1015, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11424:18:0", + "scope": 1066, + "src": "10418:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13638,10 +12994,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1061, + "id": 1014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11424:7:0", + "src": "10418:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13651,18 +13007,18 @@ "visibility": "internal" } ], - "id": 1068, + "id": 1021, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1066, + "id": 1019, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "11462:14:0", + "referencedDeclaration": 60, + "src": "10456:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13680,18 +13036,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1063, + "id": 1016, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "11445:4:0", + "referencedDeclaration": 1513, + "src": "10439:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 1064, + "id": 1017, "isConstant": false, "isLValue": false, "isPure": false, @@ -13699,27 +13055,27 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "11445:12:0", + "src": "10439:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1065, + "id": 1018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11445:16:0", + "referencedDeclaration": 1305, + "src": "10439:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1067, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": false, @@ -13727,31 +13083,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11445:32:0", + "src": "10439:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11424:53:0" + "src": "10418:53:0" }, { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1069, + "id": 1022, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11487:10:0", + "referencedDeclaration": 1015, + "src": "10481:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13764,12 +13120,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1072, + "id": 1025, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "11515:13:0", + "referencedDeclaration": 67, + "src": "10509:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13785,32 +13141,32 @@ ], "expression": { "argumentTypes": null, - "id": 1070, + "id": 1023, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11500:10:0", + "referencedDeclaration": 1015, + "src": "10494:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1071, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "11500:14:0", + "referencedDeclaration": 1281, + "src": "10494:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1073, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -13818,38 +13174,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11500:29:0", + "src": "10494:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11487:42:0", + "src": "10481:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1075, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "11487:42:0" + "src": "10481:42:0" }, { "expression": { "argumentTypes": null, - "id": 1081, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1076, + "id": 1029, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11539:10:0", + "referencedDeclaration": 1015, + "src": "10533:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13862,12 +13218,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1079, + "id": 1032, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "11567:22:0", + "referencedDeclaration": 69, + "src": "10561:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13883,32 +13239,32 @@ ], "expression": { "argumentTypes": null, - "id": 1077, + "id": 1030, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11552:10:0", + "referencedDeclaration": 1015, + "src": "10546:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11552:14:0", + "referencedDeclaration": 1305, + "src": "10546:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1080, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, @@ -13916,34 +13272,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11552:38:0", + "src": "10546:38:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11539:51:0", + "src": "10533:51:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1082, + "id": 1035, "nodeType": "ExpressionStatement", - "src": "11539:51:0" + "src": "10533:51:0" }, { "assignments": [ - 1084 + 1037 ], "declarations": [ { "constant": false, - "id": 1084, + "id": 1037, "name": "ethPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11710:22:0", + "scope": 1066, + "src": "10704:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -13951,10 +13307,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1083, + "id": 1036, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11710:7:0", + "src": "10704:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13964,18 +13320,18 @@ "visibility": "internal" } ], - "id": 1090, + "id": 1043, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1087, + "id": 1040, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "11754:11:0", + "referencedDeclaration": 58, + "src": "10748:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -13983,12 +13339,12 @@ }, { "argumentTypes": null, - "id": 1088, + "id": 1041, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11767:9:0", + "referencedDeclaration": 65, + "src": "10761:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14008,32 +13364,32 @@ ], "expression": { "argumentTypes": null, - "id": 1085, + "id": 1038, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11735:10:0", + "referencedDeclaration": 1015, + "src": "10729:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1086, + "id": 1039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "11735:18:0", + "referencedDeclaration": 1344, + "src": "10729:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1089, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -14041,27 +13397,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11735:42:0", + "src": "10729:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11710:67:0" + "src": "10704:67:0" }, { "assignments": [ - 1092 + 1045 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1045, "name": "ethPPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11788:14:0", + "scope": 1066, + "src": "10782:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14069,10 +13425,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1091, + "id": 1044, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11788:7:0", + "src": "10782:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14082,7 +13438,7 @@ "visibility": "internal" } ], - "id": 1100, + "id": 1053, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14092,26 +13448,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1095, + "id": 1048, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "11824:7:0", + "referencedDeclaration": 73, + "src": "10818:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1097, + "id": 1050, "indexExpression": { "argumentTypes": null, - "id": 1096, + "id": 1049, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11832:3:0", + "referencedDeclaration": 1006, + "src": "10826:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14122,21 +13478,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11824:12:0", + "src": "10818:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1098, + "id": 1051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11824:19:0", + "referencedDeclaration": 82, + "src": "10818:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14152,32 +13508,32 @@ ], "expression": { "argumentTypes": null, - "id": 1093, + "id": 1046, "name": "ethPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "11805:14:0", + "referencedDeclaration": 1037, + "src": "10799:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1094, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "11805:18:0", + "referencedDeclaration": 1243, + "src": "10799:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1099, + "id": 1052, "isConstant": false, "isLValue": false, "isPure": false, @@ -14185,27 +13541,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11805:39:0", + "src": "10799:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11788:56:0" + "src": "10782:56:0" }, { "assignments": [ - 1102 + 1055 ], "declarations": [ { "constant": false, - "id": 1102, + "id": 1055, "name": "ethVal", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11854:14:0", + "scope": 1066, + "src": "10848:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14213,10 +13569,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1101, + "id": 1054, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11854:7:0", + "src": "10848:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14226,7 +13582,7 @@ "visibility": "internal" } ], - "id": 1109, + "id": 1062, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14236,7 +13592,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1107, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": true, @@ -14244,14 +13600,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1105, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11882:2:0", + "src": "10876:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -14263,18 +13619,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1106, + "id": 1059, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11886:9:0", + "referencedDeclaration": 65, + "src": "10880:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11882:13:0", + "src": "10876:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14290,32 +13646,32 @@ ], "expression": { "argumentTypes": null, - "id": 1103, + "id": 1056, "name": "ethPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "11871:6:0", + "referencedDeclaration": 1045, + "src": "10865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1104, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "11871:10:0", + "referencedDeclaration": 1261, + "src": "10865:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1108, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -14323,38 +13679,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11871:25:0", + "src": "10865:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11854:42:0" + "src": "10848:42:0" }, { "expression": { "argumentTypes": null, - "id": 1110, + "id": 1063, "name": "ethVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "11914:6:0", + "referencedDeclaration": 1055, + "src": "10908:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1060, - "id": 1111, + "functionReturnParameters": 1013, + "id": 1064, "nodeType": "Return", - "src": "11907:13:0" + "src": "10901:13:0" } ] }, "documentation": null, - "id": 1113, + "id": 1066, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -14363,49 +13719,49 @@ "arguments": [ { "argumentTypes": null, - "id": 1056, + "id": 1009, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11253:3:0", + "referencedDeclaration": 1006, + "src": "10247:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 1057, + "id": 1010, "modifierName": { "argumentTypes": null, - "id": 1055, + "id": 1008, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "11240:12:0", + "referencedDeclaration": 305, + "src": "10234:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "11240:17:0" + "src": "10234:17:0" } ], "name": "calculateTotalWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1054, + "id": 1007, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1053, + "id": 1006, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11211:11:0", + "scope": 1066, + "src": "10205:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14413,10 +13769,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 1005, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11211:7:0", + "src": "10205:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14426,20 +13782,20 @@ "visibility": "internal" } ], - "src": "11210:13:0" + "src": "10204:13:0" }, "payable": false, "returnParameters": { - "id": 1060, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1059, + "id": 1012, "name": "", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11267:7:0", + "scope": 1066, + "src": "10261:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14447,10 +13803,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1058, + "id": 1011, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11267:7:0", + "src": "10261:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14460,32 +13816,32 @@ "visibility": "internal" } ], - "src": "11266:9:0" + "src": "10260:9:0" }, - "scope": 1194, - "src": "11169:758:0", + "scope": 1146, + "src": "10163:758:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1163, + "id": 1115, "nodeType": "Block", - "src": "12042:418:0", + "src": "11036:403:0", "statements": [ { "assignments": [ - 1123 + 1076 ], "declarations": [ { "constant": false, - "id": 1123, + "id": 1076, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12052:18:0", + "scope": 1116, + "src": "11046:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14493,10 +13849,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1122, + "id": 1075, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12052:7:0", + "src": "11046:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14506,61 +13862,45 @@ "visibility": "internal" } ], - "id": 1133, + "id": 1085, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1128, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "12102:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1130, - "indexExpression": { - "argumentTypes": null, - "id": 1129, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12109:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12102:13:0", + "id": 1081, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "11096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 1083, + "indexExpression": { + "argumentTypes": null, + "id": 1082, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1070, + "src": "11103:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1131, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "12102:28:0", + "nodeType": "IndexAccess", + "src": "11096:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14579,12 +13919,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1125, + "id": 1078, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12091:5:0", + "referencedDeclaration": 1070, + "src": "11085:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14598,18 +13938,18 @@ "typeString": "address" } ], - "id": 1124, + "id": 1077, "name": "checkERC20Balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 452, - "src": "12073:17:0", + "referencedDeclaration": 408, + "src": "11067:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1126, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -14617,27 +13957,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:24:0", + "src": "11067:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1127, + "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "12073:28:0", + "referencedDeclaration": 1305, + "src": "11067:28:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1132, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, @@ -14645,27 +13985,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:58:0", + "src": "11067:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12052:79:0" + "src": "11046:64:0" }, { "assignments": [ - 1135 + 1087 ], "declarations": [ { "constant": false, - "id": 1135, + "id": 1087, "name": "tokPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12243:22:0", + "scope": 1116, + "src": "11222:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14673,10 +14013,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1134, + "id": 1086, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12243:7:0", + "src": "11222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14686,18 +14026,18 @@ "visibility": "internal" } ], - "id": 1141, + "id": 1093, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1138, + "id": 1090, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "12287:11:0", + "referencedDeclaration": 58, + "src": "11266:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14705,12 +14045,12 @@ }, { "argumentTypes": null, - "id": 1139, + "id": 1091, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12300:9:0", + "referencedDeclaration": 65, + "src": "11279:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14730,32 +14070,32 @@ ], "expression": { "argumentTypes": null, - "id": 1136, + "id": 1088, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1123, - "src": "12268:10:0", + "referencedDeclaration": 1076, + "src": "11247:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1137, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12268:18:0", + "referencedDeclaration": 1344, + "src": "11247:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1140, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": false, @@ -14763,27 +14103,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12268:42:0", + "src": "11247:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12243:67:0" + "src": "11222:67:0" }, { "assignments": [ - 1143 + 1095 ], "declarations": [ { "constant": false, - "id": 1143, + "id": 1095, "name": "tokPPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12321:14:0", + "scope": 1116, + "src": "11300:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14791,10 +14131,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1142, + "id": 1094, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12321:7:0", + "src": "11300:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14804,7 +14144,7 @@ "visibility": "internal" } ], - "id": 1151, + "id": 1103, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14814,26 +14154,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1146, + "id": 1098, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "12357:7:0", + "referencedDeclaration": 73, + "src": "11336:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1148, + "id": 1100, "indexExpression": { "argumentTypes": null, - "id": 1147, + "id": 1099, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1115, - "src": "12365:3:0", + "referencedDeclaration": 1068, + "src": "11344:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -14844,21 +14184,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12357:12:0", + "src": "11336:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1149, + "id": 1101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "12357:19:0", + "referencedDeclaration": 82, + "src": "11336:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14874,32 +14214,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1096, "name": "tokPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1135, - "src": "12338:14:0", + "referencedDeclaration": 1087, + "src": "11317:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1145, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "12338:18:0", + "referencedDeclaration": 1243, + "src": "11317:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1150, + "id": 1102, "isConstant": false, "isLValue": false, "isPure": false, @@ -14907,27 +14247,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12338:39:0", + "src": "11317:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12321:56:0" + "src": "11300:56:0" }, { "assignments": [ - 1153 + 1105 ], "declarations": [ { "constant": false, - "id": 1153, + "id": 1105, "name": "tokVal", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12387:14:0", + "scope": 1116, + "src": "11366:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -14935,10 +14275,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1152, + "id": 1104, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12387:7:0", + "src": "11366:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -14948,7 +14288,7 @@ "visibility": "internal" } ], - "id": 1160, + "id": 1112, "initialValue": { "argumentTypes": null, "arguments": [ @@ -14958,7 +14298,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1158, + "id": 1110, "isConstant": false, "isLValue": false, "isPure": true, @@ -14966,14 +14306,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1156, + "id": 1108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12415:2:0", + "src": "11394:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -14985,18 +14325,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1157, + "id": 1109, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12419:9:0", + "referencedDeclaration": 65, + "src": "11398:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12415:13:0", + "src": "11394:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15012,32 +14352,32 @@ ], "expression": { "argumentTypes": null, - "id": 1154, + "id": 1106, "name": "tokPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "12404:6:0", + "referencedDeclaration": 1095, + "src": "11383:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1155, + "id": 1107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "12404:10:0", + "referencedDeclaration": 1261, + "src": "11383:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1159, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -15045,38 +14385,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12404:25:0", + "src": "11383:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12387:42:0" + "src": "11366:42:0" }, { "expression": { "argumentTypes": null, - "id": 1161, + "id": 1113, "name": "tokVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1153, - "src": "12447:6:0", + "referencedDeclaration": 1105, + "src": "11426:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1121, - "id": 1162, + "functionReturnParameters": 1074, + "id": 1114, "nodeType": "Return", - "src": "12440:13:0" + "src": "11419:13:0" } ] }, "documentation": null, - "id": 1164, + "id": 1116, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15084,16 +14424,16 @@ "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1118, + "id": 1071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1115, + "id": 1068, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11981:11:0", + "scope": 1116, + "src": "10975:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15101,10 +14441,10 @@ "typeString": "address" }, "typeName": { - "id": 1114, + "id": 1067, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11981:7:0", + "src": "10975:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15115,11 +14455,11 @@ }, { "constant": false, - "id": 1117, + "id": 1070, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11994:13:0", + "scope": 1116, + "src": "10988:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15127,10 +14467,10 @@ "typeString": "address" }, "typeName": { - "id": 1116, + "id": 1069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11994:7:0", + "src": "10988:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15140,20 +14480,20 @@ "visibility": "internal" } ], - "src": "11980:28:0" + "src": "10974:28:0" }, "payable": false, "returnParameters": { - "id": 1121, + "id": 1074, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1073, "name": "", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12033:7:0", + "scope": 1116, + "src": "11027:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15161,10 +14501,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1119, + "id": 1072, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12033:7:0", + "src": "11027:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15174,19 +14514,19 @@ "visibility": "internal" } ], - "src": "12032:9:0" + "src": "11026:9:0" }, - "scope": 1194, - "src": "11934:526:0", + "scope": 1146, + "src": "10928:511:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1174, + "id": 1126, "nodeType": "Block", - "src": "12550:65:0", + "src": "11529:65:0", "statements": [ { "expression": { @@ -15194,12 +14534,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1171, + "id": 1123, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "12585:22:0", + "referencedDeclaration": 69, + "src": "11564:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15215,32 +14555,32 @@ ], "expression": { "argumentTypes": null, - "id": 1169, + "id": 1121, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "12567:13:0", + "referencedDeclaration": 67, + "src": "11546:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1170, + "id": 1122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "12567:17:0", + "referencedDeclaration": 1281, + "src": "11546:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1172, + "id": 1124, "isConstant": false, "isLValue": false, "isPure": false, @@ -15248,21 +14588,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12567:41:0", + "src": "11546:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1168, - "id": 1173, + "functionReturnParameters": 1120, + "id": 1125, "nodeType": "Return", - "src": "12560:48:0" + "src": "11539:48:0" } ] }, "documentation": null, - "id": 1175, + "id": 1127, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15270,23 +14610,23 @@ "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1165, + "id": 1117, "nodeType": "ParameterList", "parameters": [], - "src": "12514:2:0" + "src": "11493:2:0" }, "payable": false, "returnParameters": { - "id": 1168, + "id": 1120, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1167, + "id": 1119, "name": "", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "12541:7:0", + "scope": 1127, + "src": "11520:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15294,10 +14634,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1166, + "id": 1118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12541:7:0", + "src": "11520:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15307,19 +14647,19 @@ "visibility": "internal" } ], - "src": "12540:9:0" + "src": "11519:9:0" }, - "scope": 1194, - "src": "12466:149:0", + "scope": 1146, + "src": "11445:149:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1192, + "id": 1144, "nodeType": "Block", - "src": "12737:39:0", + "src": "11716:39:0", "statements": [ { "expression": { @@ -15327,12 +14667,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1179, - "src": "12764:1:0", + "referencedDeclaration": 1131, + "src": "11743:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15340,12 +14680,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1141, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1181, - "src": "12767:1:0", + "referencedDeclaration": 1133, + "src": "11746:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15365,32 +14705,32 @@ ], "expression": { "argumentTypes": null, - "id": 1186, + "id": 1138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "12754:1:0", + "referencedDeclaration": 1129, + "src": "11733:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1187, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12754:9:0", + "referencedDeclaration": 1344, + "src": "11733:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1190, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -15398,21 +14738,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12754:15:0", + "src": "11733:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1185, - "id": 1191, + "functionReturnParameters": 1137, + "id": 1143, "nodeType": "Return", - "src": "12747:22:0" + "src": "11726:22:0" } ] }, "documentation": null, - "id": 1193, + "id": 1145, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -15420,16 +14760,16 @@ "name": "delegatePercent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1182, + "id": 1134, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1177, + "id": 1129, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12670:9:0", + "scope": 1145, + "src": "11649:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15437,10 +14777,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1176, + "id": 1128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12670:7:0", + "src": "11649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15451,11 +14791,11 @@ }, { "constant": false, - "id": 1179, + "id": 1131, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12681:9:0", + "scope": 1145, + "src": "11660:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15463,10 +14803,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1178, + "id": 1130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12681:7:0", + "src": "11660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15477,11 +14817,11 @@ }, { "constant": false, - "id": 1181, + "id": 1133, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12692:9:0", + "scope": 1145, + "src": "11671:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15489,10 +14829,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1180, + "id": 1132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12692:7:0", + "src": "11671:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15502,20 +14842,20 @@ "visibility": "internal" } ], - "src": "12669:33:0" + "src": "11648:33:0" }, "payable": false, "returnParameters": { - "id": 1185, + "id": 1137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 1136, "name": "", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12728:7:0", + "scope": 1145, + "src": "11707:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15523,10 +14863,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1183, + "id": 1135, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12728:7:0", + "src": "11707:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15536,17 +14876,17 @@ "visibility": "internal" } ], - "src": "12727:9:0" + "src": "11706:9:0" }, - "scope": 1194, - "src": "12645:131:0", + "scope": 1146, + "src": "11624:131:0", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1394, - "src": "989:11789:0" + "scope": 1346, + "src": "444:11313:0" }, { "baseContracts": [], @@ -15554,20 +14894,20 @@ "contractKind": "contract", "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", "fullyImplemented": false, - "id": 1221, + "id": 1173, "linearizedBaseContracts": [ - 1221 + 1173 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1196, + "id": 1148, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 1221, - "src": "12932:26:0", + "scope": 1173, + "src": "11911:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -15575,10 +14915,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1195, + "id": 1147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12932:7:0", + "src": "11911:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15590,7 +14930,7 @@ { "body": null, "documentation": null, - "id": 1203, + "id": 1155, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -15598,16 +14938,16 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1199, + "id": 1151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1198, + "id": 1150, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "12981:11:0", + "scope": 1155, + "src": "11960:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15615,10 +14955,10 @@ "typeString": "address" }, "typeName": { - "id": 1197, + "id": 1149, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12981:7:0", + "src": "11960:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15628,20 +14968,20 @@ "visibility": "internal" } ], - "src": "12980:13:0" + "src": "11959:13:0" }, "payable": false, "returnParameters": { - "id": 1202, + "id": 1154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1201, + "id": 1153, "name": "", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "13019:7:0", + "scope": 1155, + "src": "11998:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15649,10 +14989,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1200, + "id": 1152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13019:7:0", + "src": "11998:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15662,10 +15002,10 @@ "visibility": "internal" } ], - "src": "13018:9:0" + "src": "11997:9:0" }, - "scope": 1221, - "src": "12962:66:0", + "scope": 1173, + "src": "11941:66:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -15673,7 +15013,7 @@ { "body": null, "documentation": null, - "id": 1212, + "id": 1164, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -15681,16 +15021,16 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1208, + "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1205, + "id": 1157, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13049:10:0", + "scope": 1164, + "src": "12028:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15698,10 +15038,10 @@ "typeString": "address" }, "typeName": { - "id": 1204, + "id": 1156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13049:7:0", + "src": "12028:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15712,11 +15052,11 @@ }, { "constant": false, - "id": 1207, + "id": 1159, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13061:13:0", + "scope": 1164, + "src": "12040:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15724,10 +15064,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1158, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13061:7:0", + "src": "12040:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15737,20 +15077,20 @@ "visibility": "internal" } ], - "src": "13048:27:0" + "src": "12027:27:0" }, "payable": false, "returnParameters": { - "id": 1211, + "id": 1163, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1210, + "id": 1162, "name": "", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13092:4:0", + "scope": 1164, + "src": "12071:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15758,10 +15098,10 @@ "typeString": "bool" }, "typeName": { - "id": 1209, + "id": 1161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13092:4:0", + "src": "12071:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -15771,10 +15111,10 @@ "visibility": "internal" } ], - "src": "13091:6:0" + "src": "12070:6:0" }, - "scope": 1221, - "src": "13031:67:0", + "scope": 1173, + "src": "12010:67:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -15782,21 +15122,21 @@ { "anonymous": false, "documentation": null, - "id": 1220, + "id": 1172, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1219, + "id": 1171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1214, + "id": 1166, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13116:20:0", + "scope": 1172, + "src": "12095:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15804,10 +15144,10 @@ "typeString": "address" }, "typeName": { - "id": 1213, + "id": 1165, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13116:7:0", + "src": "12095:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15818,12 +15158,12 @@ }, { "constant": false, - "id": 1216, + "id": 1168, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13138:18:0", + "scope": 1172, + "src": "12117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15831,10 +15171,10 @@ "typeString": "address" }, "typeName": { - "id": 1215, + "id": 1167, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13138:7:0", + "src": "12117:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15845,12 +15185,12 @@ }, { "constant": false, - "id": 1218, + "id": 1170, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13158:13:0", + "scope": 1172, + "src": "12137:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15858,10 +15198,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1217, + "id": 1169, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13158:7:0", + "src": "12137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -15871,13 +15211,13 @@ "visibility": "internal" } ], - "src": "13115:57:0" + "src": "12094:57:0" }, - "src": "13101:72:0" + "src": "12080:72:0" } ], - "scope": 1394, - "src": "12908:267:0" + "scope": 1346, + "src": "11887:267:0" }, { "baseContracts": [ @@ -15885,31 +15225,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1222, + "id": 1174, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1221, - "src": "13285:10:0", + "referencedDeclaration": 1173, + "src": "12264:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$1221", + "typeIdentifier": "t_contract$_ERC20Basic_$1173", "typeString": "contract ERC20Basic" } }, - "id": 1223, + "id": 1175, "nodeType": "InheritanceSpecifier", - "src": "13285:10:0" + "src": "12264:10:0" } ], "contractDependencies": [ - 1221 + 1173 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 1261, + "id": 1213, "linearizedBaseContracts": [ - 1261, - 1221 + 1213, + 1173 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -15917,7 +15257,7 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1184, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -15925,16 +15265,16 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1225, + "id": 1177, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13319:13:0", + "scope": 1184, + "src": "12298:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15942,10 +15282,10 @@ "typeString": "address" }, "typeName": { - "id": 1224, + "id": 1176, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13319:7:0", + "src": "12298:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15956,11 +15296,11 @@ }, { "constant": false, - "id": 1227, + "id": 1179, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13334:15:0", + "scope": 1184, + "src": "12313:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -15968,10 +15308,10 @@ "typeString": "address" }, "typeName": { - "id": 1226, + "id": 1178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13334:7:0", + "src": "12313:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -15981,20 +15321,20 @@ "visibility": "internal" } ], - "src": "13318:32:0" + "src": "12297:32:0" }, "payable": false, "returnParameters": { - "id": 1231, + "id": 1183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1182, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13376:7:0", + "scope": 1184, + "src": "12355:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16002,10 +15342,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1181, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13376:7:0", + "src": "12355:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16015,10 +15355,10 @@ "visibility": "internal" } ], - "src": "13375:9:0" + "src": "12354:9:0" }, - "scope": 1261, - "src": "13300:85:0", + "scope": 1213, + "src": "12279:85:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -16026,7 +15366,7 @@ { "body": null, "documentation": null, - "id": 1243, + "id": 1195, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -16034,16 +15374,16 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1239, + "id": 1191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1186, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13410:12:0", + "scope": 1195, + "src": "12389:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16051,10 +15391,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13410:7:0", + "src": "12389:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16065,11 +15405,11 @@ }, { "constant": false, - "id": 1236, + "id": 1188, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13424:10:0", + "scope": 1195, + "src": "12403:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16077,10 +15417,10 @@ "typeString": "address" }, "typeName": { - "id": 1235, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13424:7:0", + "src": "12403:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16091,11 +15431,11 @@ }, { "constant": false, - "id": 1238, + "id": 1190, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13436:13:0", + "scope": 1195, + "src": "12415:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16103,10 +15443,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1237, + "id": 1189, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13436:7:0", + "src": "12415:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16116,20 +15456,20 @@ "visibility": "internal" } ], - "src": "13409:41:0" + "src": "12388:41:0" }, "payable": false, "returnParameters": { - "id": 1242, + "id": 1194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1193, "name": "", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13467:4:0", + "scope": 1195, + "src": "12446:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16137,10 +15477,10 @@ "typeString": "bool" }, "typeName": { - "id": 1240, + "id": 1192, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13467:4:0", + "src": "12446:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16150,10 +15490,10 @@ "visibility": "internal" } ], - "src": "13466:6:0" + "src": "12445:6:0" }, - "scope": 1261, - "src": "13388:85:0", + "scope": 1213, + "src": "12367:85:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -16161,7 +15501,7 @@ { "body": null, "documentation": null, - "id": 1252, + "id": 1204, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -16169,16 +15509,16 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1248, + "id": 1200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1245, + "id": 1197, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13493:15:0", + "scope": 1204, + "src": "12472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16186,10 +15526,10 @@ "typeString": "address" }, "typeName": { - "id": 1244, + "id": 1196, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13493:7:0", + "src": "12472:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16200,11 +15540,11 @@ }, { "constant": false, - "id": 1247, + "id": 1199, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13510:13:0", + "scope": 1204, + "src": "12489:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16212,10 +15552,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1246, + "id": 1198, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13510:7:0", + "src": "12489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16225,20 +15565,20 @@ "visibility": "internal" } ], - "src": "13492:32:0" + "src": "12471:32:0" }, "payable": false, "returnParameters": { - "id": 1251, + "id": 1203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1202, "name": "", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13541:4:0", + "scope": 1204, + "src": "12520:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16246,10 +15586,10 @@ "typeString": "bool" }, "typeName": { - "id": 1249, + "id": 1201, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13541:4:0", + "src": "12520:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16259,10 +15599,10 @@ "visibility": "internal" } ], - "src": "13540:6:0" + "src": "12519:6:0" }, - "scope": 1261, - "src": "13476:71:0", + "scope": 1213, + "src": "12455:71:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -16270,21 +15610,21 @@ { "anonymous": false, "documentation": null, - "id": 1260, + "id": 1212, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1259, + "id": 1211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1254, + "id": 1206, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13565:21:0", + "scope": 1212, + "src": "12544:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16292,10 +15632,10 @@ "typeString": "address" }, "typeName": { - "id": 1253, + "id": 1205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13565:7:0", + "src": "12544:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16306,12 +15646,12 @@ }, { "constant": false, - "id": 1256, + "id": 1208, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13588:23:0", + "scope": 1212, + "src": "12567:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16319,10 +15659,10 @@ "typeString": "address" }, "typeName": { - "id": 1255, + "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13588:7:0", + "src": "12567:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -16333,12 +15673,12 @@ }, { "constant": false, - "id": 1258, + "id": 1210, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13613:13:0", + "scope": 1212, + "src": "12592:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16346,10 +15686,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1257, + "id": 1209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13613:7:0", + "src": "12592:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16359,13 +15699,13 @@ "visibility": "internal" } ], - "src": "13564:63:0" + "src": "12543:63:0" }, - "src": "13550:78:0" + "src": "12529:78:0" } ], - "scope": 1394, - "src": "13267:363:0" + "scope": 1346, + "src": "12246:363:0" }, { "baseContracts": [], @@ -16373,31 +15713,31 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 1393, + "id": 1345, "linearizedBaseContracts": [ - 1393 + 1345 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1290, + "id": 1242, "nodeType": "Block", - "src": "13817:90:0", + "src": "12796:90:0", "statements": [ { "assignments": [ - 1271 + 1223 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1223, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13827:9:0", + "scope": 1243, + "src": "12806:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16405,10 +15745,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 1222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13827:7:0", + "src": "12806:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16418,26 +15758,26 @@ "visibility": "internal" } ], - "id": 1275, + "id": 1227, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1274, + "id": 1226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1272, + "id": 1224, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13839:1:0", + "referencedDeclaration": 1215, + "src": "12818:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16447,25 +15787,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1273, + "id": 1225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13843:1:0", + "referencedDeclaration": 1217, + "src": "12822:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13839:5:0", + "src": "12818:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13827:17:0" + "src": "12806:17:0" }, { "expression": { @@ -16477,7 +15817,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1285, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, @@ -16488,19 +15828,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1279, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1277, + "id": 1229, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13861:1:0", + "referencedDeclaration": 1215, + "src": "12840:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16511,14 +15851,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1278, + "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13866:1:0", + "src": "12845:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -16526,7 +15866,7 @@ }, "value": "0" }, - "src": "13861:6:0", + "src": "12840:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16540,7 +15880,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1284, + "id": 1236, "isConstant": false, "isLValue": false, "isPure": false, @@ -16551,19 +15891,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1282, + "id": 1234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1280, + "id": 1232, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13871:1:0", + "referencedDeclaration": 1223, + "src": "12850:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16573,18 +15913,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1281, + "id": 1233, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13875:1:0", + "referencedDeclaration": 1215, + "src": "12854:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:5:0", + "src": "12850:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16594,24 +15934,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1283, + "id": 1235, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13880:1:0", + "referencedDeclaration": 1217, + "src": "12859:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:10:0", + "src": "12850:10:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13861:20:0", + "src": "12840:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -16625,18 +15965,18 @@ "typeString": "bool" } ], - "id": 1276, + "id": 1228, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "13854:6:0", + "referencedDeclaration": 1489, + "src": "12833:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, @@ -16644,39 +15984,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13854:28:0", + "src": "12833:28:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 1239, "nodeType": "ExpressionStatement", - "src": "13854:28:0" + "src": "12833:28:0" }, { "expression": { "argumentTypes": null, - "id": 1288, + "id": 1240, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13899:1:0", + "referencedDeclaration": 1223, + "src": "12878:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1269, - "id": 1289, + "functionReturnParameters": 1221, + "id": 1241, "nodeType": "Return", - "src": "13892:8:0" + "src": "12871:8:0" } ] }, "documentation": null, - "id": 1291, + "id": 1243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -16684,16 +16024,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 1266, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1263, + "id": 1215, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13759:9:0", + "scope": 1243, + "src": "12738:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16701,10 +16041,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1214, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13759:7:0", + "src": "12738:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16715,11 +16055,11 @@ }, { "constant": false, - "id": 1265, + "id": 1217, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13770:9:0", + "scope": 1243, + "src": "12749:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16727,10 +16067,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1264, + "id": 1216, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13770:7:0", + "src": "12749:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16740,20 +16080,20 @@ "visibility": "internal" } ], - "src": "13758:22:0" + "src": "12737:22:0" }, "payable": false, "returnParameters": { - "id": 1269, + "id": 1221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1268, + "id": 1220, "name": "", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13808:7:0", + "scope": 1243, + "src": "12787:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16761,10 +16101,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1267, + "id": 1219, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13808:7:0", + "src": "12787:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16774,32 +16114,32 @@ "visibility": "internal" } ], - "src": "13807:9:0" + "src": "12786:9:0" }, - "scope": 1393, - "src": "13746:161:0", + "scope": 1345, + "src": "12725:161:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1308, + "id": 1260, "nodeType": "Block", - "src": "13984:216:0", + "src": "12963:216:0", "statements": [ { "assignments": [ - 1301 + 1253 ], "declarations": [ { "constant": false, - "id": 1301, + "id": 1253, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "14072:9:0", + "scope": 1261, + "src": "13051:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16807,10 +16147,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1300, + "id": 1252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14072:7:0", + "src": "13051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16820,26 +16160,26 @@ "visibility": "internal" } ], - "id": 1305, + "id": 1257, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1304, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1302, + "id": 1254, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1293, - "src": "14084:1:0", + "referencedDeclaration": 1245, + "src": "13063:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16849,49 +16189,49 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1303, + "id": 1255, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1295, - "src": "14088:1:0", + "referencedDeclaration": 1247, + "src": "13067:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14084:5:0", + "src": "13063:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14072:17:0" + "src": "13051:17:0" }, { "expression": { "argumentTypes": null, - "id": 1306, + "id": 1258, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "14192:1:0", + "referencedDeclaration": 1253, + "src": "13171:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1299, - "id": 1307, + "functionReturnParameters": 1251, + "id": 1259, "nodeType": "Return", - "src": "14185:8:0" + "src": "13164:8:0" } ] }, "documentation": null, - "id": 1309, + "id": 1261, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -16899,16 +16239,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 1296, + "id": 1248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1293, + "id": 1245, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13926:9:0", + "scope": 1261, + "src": "12905:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16916,10 +16256,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1292, + "id": 1244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13926:7:0", + "src": "12905:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16930,11 +16270,11 @@ }, { "constant": false, - "id": 1295, + "id": 1247, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13937:9:0", + "scope": 1261, + "src": "12916:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16942,10 +16282,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1294, + "id": 1246, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13937:7:0", + "src": "12916:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16955,20 +16295,20 @@ "visibility": "internal" } ], - "src": "13925:22:0" + "src": "12904:22:0" }, "payable": false, "returnParameters": { - "id": 1299, + "id": 1251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1250, "name": "", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13975:7:0", + "scope": 1261, + "src": "12954:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -16976,10 +16316,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1297, + "id": 1249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13975:7:0", + "src": "12954:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -16989,19 +16329,19 @@ "visibility": "internal" } ], - "src": "13974:9:0" + "src": "12953:9:0" }, - "scope": 1393, - "src": "13913:287:0", + "scope": 1345, + "src": "12892:287:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1328, + "id": 1280, "nodeType": "Block", - "src": "14277:53:0", + "src": "13256:53:0", "statements": [ { "expression": { @@ -17013,19 +16353,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1321, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1319, + "id": 1271, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14294:1:0", + "referencedDeclaration": 1265, + "src": "13273:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17035,18 +16375,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 1320, + "id": 1272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14299:1:0", + "referencedDeclaration": 1263, + "src": "13278:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14294:6:0", + "src": "13273:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17060,18 +16400,18 @@ "typeString": "bool" } ], - "id": 1318, + "id": 1270, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14287:6:0", + "referencedDeclaration": 1489, + "src": "13266:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1322, + "id": 1274, "isConstant": false, "isLValue": false, "isPure": false, @@ -17079,15 +16419,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14287:14:0", + "src": "13266:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1323, + "id": 1275, "nodeType": "ExpressionStatement", - "src": "14287:14:0" + "src": "13266:14:0" }, { "expression": { @@ -17096,19 +16436,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1326, + "id": 1278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1324, + "id": 1276, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14318:1:0", + "referencedDeclaration": 1263, + "src": "13297:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17118,32 +16458,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1325, + "id": 1277, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14322:1:0", + "referencedDeclaration": 1265, + "src": "13301:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14318:5:0", + "src": "13297:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1317, - "id": 1327, + "functionReturnParameters": 1269, + "id": 1279, "nodeType": "Return", - "src": "14311:12:0" + "src": "13290:12:0" } ] }, "documentation": null, - "id": 1329, + "id": 1281, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17151,16 +16491,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 1314, + "id": 1266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1311, + "id": 1263, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14219:9:0", + "scope": 1281, + "src": "13198:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17168,10 +16508,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1310, + "id": 1262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14219:7:0", + "src": "13198:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17182,11 +16522,11 @@ }, { "constant": false, - "id": 1313, + "id": 1265, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14230:9:0", + "scope": 1281, + "src": "13209:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17194,10 +16534,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1312, + "id": 1264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14230:7:0", + "src": "13209:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17207,20 +16547,20 @@ "visibility": "internal" } ], - "src": "14218:22:0" + "src": "13197:22:0" }, "payable": false, "returnParameters": { - "id": 1317, + "id": 1269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 1268, "name": "", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14268:7:0", + "scope": 1281, + "src": "13247:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17228,10 +16568,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1315, + "id": 1267, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14268:7:0", + "src": "13247:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17241,32 +16581,32 @@ "visibility": "internal" } ], - "src": "14267:9:0" + "src": "13246:9:0" }, - "scope": 1393, - "src": "14206:124:0", + "scope": 1345, + "src": "13185:124:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1352, + "id": 1304, "nodeType": "Block", - "src": "14407:76:0", + "src": "13386:76:0", "statements": [ { "assignments": [ - 1339 + 1291 ], "declarations": [ { "constant": false, - "id": 1339, + "id": 1291, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14417:9:0", + "scope": 1305, + "src": "13396:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17274,10 +16614,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1338, + "id": 1290, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14417:7:0", + "src": "13396:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17287,26 +16627,26 @@ "visibility": "internal" } ], - "id": 1343, + "id": 1295, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1342, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1340, + "id": 1292, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14429:1:0", + "referencedDeclaration": 1283, + "src": "13408:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17316,25 +16656,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1341, + "id": 1293, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "14433:1:0", + "referencedDeclaration": 1285, + "src": "13412:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14429:5:0", + "src": "13408:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14417:17:0" + "src": "13396:17:0" }, { "expression": { @@ -17346,19 +16686,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1347, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1345, + "id": 1297, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14451:1:0", + "referencedDeclaration": 1291, + "src": "13430:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17368,18 +16708,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1346, + "id": 1298, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14456:1:0", + "referencedDeclaration": 1283, + "src": "13435:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14451:6:0", + "src": "13430:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -17393,18 +16733,18 @@ "typeString": "bool" } ], - "id": 1344, + "id": 1296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14444:6:0", + "referencedDeclaration": 1489, + "src": "13423:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1348, + "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, @@ -17412,39 +16752,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14444:14:0", + "src": "13423:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1349, + "id": 1301, "nodeType": "ExpressionStatement", - "src": "14444:14:0" + "src": "13423:14:0" }, { "expression": { "argumentTypes": null, - "id": 1350, + "id": 1302, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14475:1:0", + "referencedDeclaration": 1291, + "src": "13454:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1337, - "id": 1351, + "functionReturnParameters": 1289, + "id": 1303, "nodeType": "Return", - "src": "14468:8:0" + "src": "13447:8:0" } ] }, "documentation": null, - "id": 1353, + "id": 1305, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17452,16 +16792,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 1334, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1331, + "id": 1283, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14349:9:0", + "scope": 1305, + "src": "13328:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17469,10 +16809,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1330, + "id": 1282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14349:7:0", + "src": "13328:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17483,11 +16823,11 @@ }, { "constant": false, - "id": 1333, + "id": 1285, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14360:9:0", + "scope": 1305, + "src": "13339:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17495,10 +16835,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14360:7:0", + "src": "13339:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17508,20 +16848,20 @@ "visibility": "internal" } ], - "src": "14348:22:0" + "src": "13327:22:0" }, "payable": false, "returnParameters": { - "id": 1337, + "id": 1289, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1336, + "id": 1288, "name": "", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14398:7:0", + "scope": 1305, + "src": "13377:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17529,10 +16869,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1335, + "id": 1287, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14398:7:0", + "src": "13377:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17542,32 +16882,32 @@ "visibility": "internal" } ], - "src": "14397:9:0" + "src": "13376:9:0" }, - "scope": 1393, - "src": "14336:147:0", + "scope": 1345, + "src": "13315:147:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1391, + "id": 1343, "nodeType": "Block", - "src": "14768:257:0", + "src": "13747:257:0", "statements": [ { "assignments": [ - 1365 + 1317 ], "declarations": [ { "constant": false, - "id": 1365, + "id": 1317, "name": "_numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14826:18:0", + "scope": 1344, + "src": "13805:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17575,10 +16915,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1364, + "id": 1316, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14826:7:0", + "src": "13805:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17588,18 +16928,18 @@ "visibility": "internal" } ], - "id": 1375, + "id": 1327, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1367, + "id": 1319, "name": "numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1355, - "src": "14851:9:0", + "referencedDeclaration": 1307, + "src": "13830:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17611,7 +16951,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1373, + "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, @@ -17619,14 +16959,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1368, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14862:2:0", + "src": "13841:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -17645,19 +16985,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1371, + "id": 1323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1369, + "id": 1321, "name": "precision", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "14869:9:0", + "referencedDeclaration": 1311, + "src": "13848:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17668,14 +17008,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1370, + "id": 1322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14879:1:0", + "src": "13858:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -17683,27 +17023,27 @@ }, "value": "1" }, - "src": "14869:11:0", + "src": "13848:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1372, + "id": 1324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14868:13:0", + "src": "13847:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14862:19:0", + "src": "13841:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17721,18 +17061,18 @@ "typeString": "uint256" } ], - "id": 1366, + "id": 1318, "name": "mul", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "14847:3:0", + "referencedDeclaration": 1243, + "src": "13826:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1374, + "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, @@ -17740,27 +17080,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14847:35:0", + "src": "13826:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14826:56:0" + "src": "13805:56:0" }, { "assignments": [ - 1377 + 1329 ], "declarations": [ { "constant": false, - "id": 1377, + "id": 1329, "name": "_quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14931:17:0", + "scope": 1344, + "src": "13910:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -17768,10 +17108,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1376, + "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14931:7:0", + "src": "13910:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17781,14 +17121,14 @@ "visibility": "internal" } ], - "id": 1387, + "id": 1339, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1386, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, @@ -17802,7 +17142,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1383, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": false, @@ -17812,12 +17152,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1379, + "id": 1331, "name": "_numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "14956:10:0", + "referencedDeclaration": 1317, + "src": "13935:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17825,12 +17165,12 @@ }, { "argumentTypes": null, - "id": 1380, + "id": 1332, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1357, - "src": "14968:11:0", + "referencedDeclaration": 1309, + "src": "13947:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17848,18 +17188,18 @@ "typeString": "uint256" } ], - "id": 1378, + "id": 1330, "name": "div", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "14952:3:0", + "referencedDeclaration": 1261, + "src": "13931:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1381, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -17867,7 +17207,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14952:28:0", + "src": "13931:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17878,14 +17218,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "35", - "id": 1382, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14983:1:0", + "src": "13962:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_5_by_1", @@ -17893,21 +17233,21 @@ }, "value": "5" }, - "src": "14952:32:0", + "src": "13931:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1384, + "id": 1336, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14951:34:0", + "src": "13930:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -17918,14 +17258,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1385, + "id": 1337, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14988:2:0", + "src": "13967:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -17933,14 +17273,14 @@ }, "value": "10" }, - "src": "14951:39:0", + "src": "13930:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14931:59:0" + "src": "13910:59:0" }, { "expression": { @@ -17948,40 +17288,40 @@ "components": [ { "argumentTypes": null, - "id": 1388, + "id": 1340, "name": "_quotient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "15008:9:0", + "referencedDeclaration": 1329, + "src": "13987:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1389, + "id": 1341, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "15007:11:0", + "src": "13986:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1363, - "id": 1390, + "functionReturnParameters": 1315, + "id": 1342, "nodeType": "Return", - "src": "15000:18:0" + "src": "13979:18:0" } ] }, "documentation": null, - "id": 1392, + "id": 1344, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -17989,16 +17329,16 @@ "name": "percent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1360, + "id": 1312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1355, + "id": 1307, "name": "numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14665:17:0", + "scope": 1344, + "src": "13644:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18006,10 +17346,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1354, + "id": 1306, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14665:7:0", + "src": "13644:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18020,11 +17360,11 @@ }, { "constant": false, - "id": 1357, + "id": 1309, "name": "denominator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14684:19:0", + "scope": 1344, + "src": "13663:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18032,10 +17372,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1356, + "id": 1308, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14684:7:0", + "src": "13663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18046,11 +17386,11 @@ }, { "constant": false, - "id": 1359, + "id": 1311, "name": "precision", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14705:17:0", + "scope": 1344, + "src": "13684:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18058,10 +17398,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1358, + "id": 1310, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14705:7:0", + "src": "13684:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18071,20 +17411,20 @@ "visibility": "internal" } ], - "src": "14664:59:0" + "src": "13643:59:0" }, "payable": false, "returnParameters": { - "id": 1363, + "id": 1315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1362, + "id": 1314, "name": "quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14750:16:0", + "scope": 1344, + "src": "13729:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18092,10 +17432,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1361, + "id": 1313, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14750:7:0", + "src": "13729:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18105,41 +17445,38 @@ "visibility": "internal" } ], - "src": "14749:18:0" + "src": "13728:18:0" }, - "scope": 1393, - "src": "14648:377:0", + "scope": 1345, + "src": "13627:377:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1394, - "src": "13723:1304:0" + "scope": 1346, + "src": "12702:1304:0" } ], - "src": "0:15029:0" + "src": "0:14008:0" }, "legacyAST": { "absolutePath": "/Users/billy/GitHub/okwme/doneth-v2/contracts/Doneth.sol", "exportedSymbols": { "Doneth": [ - 1194 + 1146 ], "ERC20": [ - 1261 + 1213 ], "ERC20Basic": [ - 1221 - ], - "Ownable": [ - 48 + 1173 ], "SafeMath": [ - 1393 + 1345 ] }, - "id": 1394, + "id": 1346, "nodeType": "SourceUnit", "nodes": [ { @@ -18159,20 +17496,20 @@ "contractKind": "contract", "documentation": "@title Doneth (Doneth)\n@dev Doneth is a contract that allows shared access to funds\nin the form of Ether and ERC20 tokens. It is especially relevant\nto donation based projects. The admins of the contract determine \nwho is a member, and each member gets a number of shares. The \nnumber of shares each member has determines how much Ether/ERC20 \nthe member can withdraw from the contract.", "fullyImplemented": true, - "id": 48, + "id": 1146, "linearizedBaseContracts": [ - 48 + 1146 ], - "name": "Ownable", + "name": "Doneth", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, "id": 3, - "name": "owner", + "name": "implementation", "nodeType": "VariableDeclaration", - "scope": 48, - "src": "640:20:0", + "scope": 1146, + "src": "467:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18183,7 +17520,33 @@ "id": 2, "name": "address", "nodeType": "ElementaryTypeName", - "src": "640:7:0", + "src": "467:7:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + "value": null, + "visibility": "public" + }, + { + "constant": false, + "id": 5, + "name": "owner", + "nodeType": "VariableDeclaration", + "scope": 1146, + "src": "557:20:0", + "stateVariable": true, + "storageLocation": "default", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + }, + "typeName": { + "id": 4, + "name": "address", + "nodeType": "ElementaryTypeName", + "src": "557:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18194,26 +17557,26 @@ }, { "body": { - "id": 11, + "id": 13, "nodeType": "Block", - "src": "693:34:0", + "src": "610:34:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 9, + "id": 11, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 6, + "id": 8, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "703:5:0", + "referencedDeclaration": 5, + "src": "620:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18225,18 +17588,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 7, + "id": 9, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "711:2:0", + "referencedDeclaration": 1512, + "src": "628:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 8, + "id": 10, "isConstant": false, "isLValue": false, "isPure": false, @@ -18244,56 +17607,56 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "711:9:0", + "src": "628:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "703:17:0", + "src": "620:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 10, + "id": 12, "nodeType": "ExpressionStatement", - "src": "703:17:0" + "src": "620:17:0" } ] }, "documentation": null, - "id": 12, + "id": 14, "implemented": true, - "isConstructor": true, + "isConstructor": false, "isDeclaredConst": false, "modifiers": [], "name": "Ownable", "nodeType": "FunctionDefinition", "parameters": { - "id": 4, + "id": 6, "nodeType": "ParameterList", "parameters": [], - "src": "683:2:0" + "src": "600:2:0" }, "payable": false, "returnParameters": { - "id": 5, + "id": 7, "nodeType": "ParameterList", "parameters": [], - "src": "693:0:0" + "src": "610:0:0" }, - "scope": 48, - "src": "667:60:0", + "scope": 1146, + "src": "584:60:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 27, + "id": 29, "nodeType": "Block", - "src": "754:78:0", + "src": "671:78:0", "statements": [ { "expression": { @@ -18305,7 +17668,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 23, + "id": 25, "isConstant": false, "isLValue": false, "isPure": false, @@ -18316,7 +17679,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 18, + "id": 20, "isConstant": false, "isLValue": false, "isPure": false, @@ -18325,18 +17688,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 15, + "id": 17, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "772:3:0", + "referencedDeclaration": 1500, + "src": "689:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 16, + "id": 18, "isConstant": false, "isLValue": false, "isPure": false, @@ -18344,7 +17707,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "772:10:0", + "src": "689:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18354,18 +17717,18 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 17, + "id": 19, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "786:5:0", + "referencedDeclaration": 5, + "src": "703:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "772:19:0", + "src": "689:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18379,7 +17742,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 22, + "id": 24, "isConstant": false, "isLValue": false, "isPure": false, @@ -18388,18 +17751,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 19, + "id": 21, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "795:2:0", + "referencedDeclaration": 1512, + "src": "712:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 20, + "id": 22, "isConstant": false, "isLValue": false, "isPure": false, @@ -18407,7 +17770,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "795:9:0", + "src": "712:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18417,24 +17780,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 21, + "id": 23, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "808:5:0", + "referencedDeclaration": 5, + "src": "725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "795:18:0", + "src": "712:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "772:41:0", + "src": "689:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18448,21 +17811,21 @@ "typeString": "bool" } ], - "id": 14, + "id": 16, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1514, - "src": "764:7:0", + "referencedDeclaration": 1503, + "src": "681:7:0", "typeDescriptions": { "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 24, + "id": 26, "isConstant": false, "isLValue": false, "isPure": false, @@ -18470,41 +17833,41 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "764:50:0", + "src": "681:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 25, + "id": 27, "nodeType": "ExpressionStatement", - "src": "764:50:0" + "src": "681:50:0" }, { - "id": 26, + "id": 28, "nodeType": "PlaceholderStatement", - "src": "824:1:0" + "src": "741:1:0" } ] }, "documentation": null, - "id": 28, + "id": 30, "name": "onlyOwner", "nodeType": "ModifierDefinition", "parameters": { - "id": 13, + "id": 15, "nodeType": "ParameterList", "parameters": [], - "src": "751:2:0" + "src": "668:2:0" }, - "src": "733:99:0", + "src": "650:99:0", "visibility": "internal" }, { "body": { - "id": 46, + "id": 48, "nodeType": "Block", - "src": "900:85:0", + "src": "817:85:0", "statements": [ { "condition": { @@ -18513,19 +17876,19 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 39, + "id": 41, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 35, + "id": 37, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "914:8:0", + "referencedDeclaration": 32, + "src": "831:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18539,14 +17902,14 @@ { "argumentTypes": null, "hexValue": "30", - "id": 37, + "id": 39, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "934:1:0", + "src": "851:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -18562,20 +17925,20 @@ "typeString": "int_const 0" } ], - "id": 36, + "id": 38, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "926:7:0", + "src": "843:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 38, + "id": 40, "isConstant": false, "isLValue": false, "isPure": true, @@ -18583,43 +17946,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "926:10:0", + "src": "843:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "914:22:0", + "src": "831:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 45, + "id": 47, "nodeType": "IfStatement", - "src": "910:69:0", + "src": "827:69:0", "trueBody": { - "id": 44, + "id": 46, "nodeType": "Block", - "src": "938:41:0", + "src": "855:41:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 42, + "id": 44, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 40, + "id": 42, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "952:5:0", + "referencedDeclaration": 5, + "src": "869:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18629,26 +17992,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 41, + "id": 43, "name": "newOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 30, - "src": "960:8:0", + "referencedDeclaration": 32, + "src": "877:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "952:16:0", + "src": "869:16:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 43, + "id": 45, "nodeType": "ExpressionStatement", - "src": "952:16:0" + "src": "869:16:0" } ] } @@ -18656,44 +18019,44 @@ ] }, "documentation": null, - "id": 47, + "id": 49, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": null, - "id": 33, + "id": 35, "modifierName": { "argumentTypes": null, - "id": 32, + "id": 34, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "883:9:0", + "referencedDeclaration": 30, + "src": "800:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "883:9:0" + "src": "800:9:0" } ], "name": "transferOwnership", "nodeType": "FunctionDefinition", "parameters": { - "id": 31, + "id": 33, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 30, + "id": 32, "name": "newOwner", "nodeType": "VariableDeclaration", - "scope": 47, - "src": "865:16:0", + "scope": 49, + "src": "782:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -18701,10 +18064,10 @@ "typeString": "address" }, "typeName": { - "id": 29, + "id": 31, "name": "address", "nodeType": "ElementaryTypeName", - "src": "865:7:0", + "src": "782:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -18714,81 +18077,42 @@ "visibility": "internal" } ], - "src": "864:18:0" + "src": "781:18:0" }, "payable": false, "returnParameters": { - "id": 34, + "id": 36, "nodeType": "ParameterList", "parameters": [], - "src": "900:0:0" + "src": "817:0:0" }, - "scope": 48, - "src": "838:147:0", + "scope": 1146, + "src": "755:147:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" - } - ], - "scope": 1394, - "src": "617:370:0" - }, - { - "baseContracts": [ - { - "arguments": null, - "baseName": { - "contractScope": null, - "id": 49, - "name": "Ownable", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 48, - "src": "1008:7:0", - "typeDescriptions": { - "typeIdentifier": "t_contract$_Ownable_$48", - "typeString": "contract Ownable" - } - }, - "id": 50, - "nodeType": "InheritanceSpecifier", - "src": "1008:7:0" - } - ], - "contractDependencies": [ - 48 - ], - "contractKind": "contract", - "documentation": null, - "fullyImplemented": true, - "id": 1194, - "linearizedBaseContracts": [ - 1194, - 48 - ], - "name": "Doneth", - "nodeType": "ContractDefinition", - "nodes": [ + }, { - "id": 53, + "id": 52, "libraryName": { "contractScope": null, - "id": 51, + "id": 50, "name": "SafeMath", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1393, - "src": "1028:8:0", + "referencedDeclaration": 1345, + "src": "914:8:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_SafeMath_$1393", + "typeIdentifier": "t_contract$_SafeMath_$1345", "typeString": "library SafeMath" } }, "nodeType": "UsingForDirective", - "src": "1022:27:0", + "src": "908:27:0", "typeName": { - "id": 52, + "id": 51, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1041:7:0", + "src": "927:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18797,11 +18121,11 @@ }, { "constant": false, - "id": 55, + "id": 54, "name": "initialized", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1057:23:0", + "scope": 1146, + "src": "943:23:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18809,10 +18133,10 @@ "typeString": "bool" }, "typeName": { - "id": 54, + "id": 53, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1057:4:0", + "src": "943:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -18823,11 +18147,11 @@ }, { "constant": false, - "id": 57, + "id": 56, "name": "name", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1115:18:0", + "scope": 1146, + "src": "1001:18:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18835,10 +18159,10 @@ "typeString": "string" }, "typeName": { - "id": 56, + "id": 55, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1115:6:0", + "src": "1001:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -18849,11 +18173,11 @@ }, { "constant": false, - "id": 59, + "id": 58, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1186:26:0", + "scope": 1146, + "src": "1072:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18861,10 +18185,10 @@ "typeString": "uint256" }, "typeName": { - "id": 58, + "id": 57, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1186:7:0", + "src": "1072:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18875,11 +18199,11 @@ }, { "constant": false, - "id": 61, + "id": 60, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1265:29:0", + "scope": 1146, + "src": "1151:29:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18887,10 +18211,10 @@ "typeString": "uint256" }, "typeName": { - "id": 60, + "id": 59, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1265:7:0", + "src": "1151:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18901,11 +18225,11 @@ }, { "constant": false, - "id": 63, + "id": 62, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1354:33:0", + "scope": 1146, + "src": "1240:33:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18913,10 +18237,10 @@ "typeString": "uint256" }, "typeName": { - "id": 62, + "id": 61, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1354:7:0", + "src": "1240:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18927,11 +18251,11 @@ }, { "constant": true, - "id": 66, + "id": 65, "name": "PRECISION", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1454:38:0", + "scope": 1146, + "src": "1340:38:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18939,10 +18263,10 @@ "typeString": "uint256" }, "typeName": { - "id": 64, + "id": 63, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1454:7:0", + "src": "1340:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18951,14 +18275,14 @@ "value": { "argumentTypes": null, "hexValue": "3138", - "id": 65, + "id": 64, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "1490:2:0", + "src": "1376:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_18_by_1", @@ -18970,11 +18294,11 @@ }, { "constant": false, - "id": 68, + "id": 67, "name": "sharedExpense", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1546:28:0", + "scope": 1146, + "src": "1432:28:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -18982,10 +18306,10 @@ "typeString": "uint256" }, "typeName": { - "id": 67, + "id": 66, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1546:7:0", + "src": "1432:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -18996,11 +18320,11 @@ }, { "constant": false, - "id": 70, + "id": 69, "name": "sharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1580:37:0", + "scope": 1146, + "src": "1466:37:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19008,10 +18332,10 @@ "typeString": "uint256" }, "typeName": { - "id": 69, + "id": 68, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1580:7:0", + "src": "1466:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19022,44 +18346,44 @@ }, { "constant": false, - "id": 74, + "id": 73, "name": "members", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1661:41:0", + "scope": 1146, + "src": "1547:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "typeName": { - "id": 73, + "id": 72, "keyType": { - "id": 71, + "id": 70, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1669:7:0", + "src": "1555:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1661:26:0", + "src": "1547:26:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member)" }, "valueType": { "contractScope": null, - "id": 72, + "id": 71, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "1680:6:0", + "referencedDeclaration": 91, + "src": "1566:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } } @@ -19069,11 +18393,11 @@ }, { "constant": false, - "id": 77, + "id": 76, "name": "memberKeys", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "1708:27:0", + "scope": 1146, + "src": "1594:27:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -19082,19 +18406,19 @@ }, "typeName": { "baseType": { - "id": 75, + "id": 74, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1708:7:0", + "src": "1594:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 76, + "id": 75, "length": null, "nodeType": "ArrayTypeName", - "src": "1708:9:0", + "src": "1594:9:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", "typeString": "address[]" @@ -19105,15 +18429,15 @@ }, { "canonicalName": "Doneth.Member", - "id": 92, + "id": 91, "members": [ { "constant": false, - "id": 79, + "id": 78, "name": "exists", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1765:11:0", + "scope": 91, + "src": "1651:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19121,10 +18445,10 @@ "typeString": "bool" }, "typeName": { - "id": 78, + "id": 77, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1765:4:0", + "src": "1651:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19135,11 +18459,11 @@ }, { "constant": false, - "id": 81, + "id": 80, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1786:10:0", + "scope": 91, + "src": "1672:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19147,10 +18471,10 @@ "typeString": "bool" }, "typeName": { - "id": 80, + "id": 79, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "1786:4:0", + "src": "1672:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19161,11 +18485,11 @@ }, { "constant": false, - "id": 83, + "id": 82, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1806:14:0", + "scope": 91, + "src": "1692:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19173,10 +18497,10 @@ "typeString": "uint256" }, "typeName": { - "id": 82, + "id": 81, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1806:7:0", + "src": "1692:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19187,11 +18511,11 @@ }, { "constant": false, - "id": 85, + "id": 84, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1830:17:0", + "scope": 91, + "src": "1716:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19199,10 +18523,10 @@ "typeString": "uint256" }, "typeName": { - "id": 84, + "id": 83, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1830:7:0", + "src": "1716:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19213,11 +18537,11 @@ }, { "constant": false, - "id": 87, + "id": 86, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1857:17:0", + "scope": 91, + "src": "1743:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19225,10 +18549,10 @@ "typeString": "string" }, "typeName": { - "id": 86, + "id": 85, "name": "string", "nodeType": "ElementaryTypeName", - "src": "1857:6:0", + "src": "1743:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -19239,11 +18563,11 @@ }, { "constant": false, - "id": 91, + "id": 90, "name": "tokensWithdrawn", "nodeType": "VariableDeclaration", - "scope": 92, - "src": "1884:43:0", + "scope": 91, + "src": "1770:43:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -19251,28 +18575,28 @@ "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 90, + "id": 89, "keyType": { - "id": 88, + "id": 87, "name": "address", "nodeType": "ElementaryTypeName", - "src": "1892:7:0", + "src": "1778:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "1884:27:0", + "src": "1770:27:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" }, "valueType": { - "id": 89, + "id": 88, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "1903:7:0", + "src": "1789:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -19285,161 +18609,60 @@ ], "name": "Member", "nodeType": "StructDefinition", - "scope": 1194, - "src": "1741:193:0", + "scope": 1146, + "src": "1627:193:0", "visibility": "public" }, { "constant": false, - "id": 96, + "id": 95, "name": "tokens", "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2010:39:0", + "scope": 1146, + "src": "1896:41:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "typeName": { - "id": 95, + "id": 94, "keyType": { - "id": 93, + "id": 92, "name": "address", "nodeType": "ElementaryTypeName", - "src": "2018:7:0", + "src": "1904:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, "nodeType": "Mapping", - "src": "2010:25:0", + "src": "1896:27:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token)" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" }, "valueType": { - "contractScope": null, - "id": 94, - "name": "Token", - "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 104, - "src": "2029:5:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage_ptr", - "typeString": "struct Doneth.Token" - } - } - }, - "value": null, - "visibility": "public" - }, - { - "constant": false, - "id": 99, - "name": "tokenKeys", - "nodeType": "VariableDeclaration", - "scope": 1194, - "src": "2055:26:0", - "stateVariable": true, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage", - "typeString": "address[]" - }, - "typeName": { - "baseType": { - "id": 97, - "name": "address", + "id": 93, + "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "2055:7:0", + "src": "1915:7:0", "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } - }, - "id": 98, - "length": null, - "nodeType": "ArrayTypeName", - "src": "2055:9:0", - "typeDescriptions": { - "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr", - "typeString": "address[]" } }, "value": null, "visibility": "public" }, - { - "canonicalName": "Doneth.Token", - "id": 104, - "members": [ - { - "constant": false, - "id": 101, - "name": "exists", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2110:11:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - }, - "typeName": { - "id": 100, - "name": "bool", - "nodeType": "ElementaryTypeName", - "src": "2110:4:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 103, - "name": "totalWithdrawn", - "nodeType": "VariableDeclaration", - "scope": 104, - "src": "2131:22:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "typeName": { - "id": 102, - "name": "uint256", - "nodeType": "ElementaryTypeName", - "src": "2131:7:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "value": null, - "visibility": "internal" - } - ], - "name": "Token", - "nodeType": "StructDefinition", - "scope": 1194, - "src": "2087:73:0", - "visibility": "public" - }, { "body": { - "id": 223, + "id": 179, "nodeType": "Block", - "src": "2363:911:0", + "src": "1967:484:0", "statements": [ { "expression": { @@ -19447,7 +18670,7 @@ "arguments": [ { "argumentTypes": null, - "id": 113, + "id": 100, "isConstant": false, "isLValue": false, "isPure": false, @@ -19455,15 +18678,15 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "2381:12:0", + "src": "1985:12:0", "subExpression": { "argumentTypes": null, - "id": 112, + "id": 99, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2382:11:0", + "referencedDeclaration": 54, + "src": "1986:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19473,24 +18696,6 @@ "typeIdentifier": "t_bool", "typeString": "bool" } - }, - { - "argumentTypes": null, - "hexValue": "414c524541445920494e495449414c495a4544", - "id": 114, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "string", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2395:21:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" - }, - "value": "ALREADY INITIALIZED" } ], "expression": { @@ -19498,27 +18703,23 @@ { "typeIdentifier": "t_bool", "typeString": "bool" - }, - { - "typeIdentifier": "t_stringliteral_e1b8a905832292be113e59383f7d405b841482915799df05034d0acfef0942b8", - "typeString": "literal_string \"ALREADY INITIALIZED\"" } ], - "id": 111, + "id": 98, "name": "require", "nodeType": "Identifier", "overloadedDeclarations": [ - 1514, - 1515 + 1503, + 1504 ], - "referencedDeclaration": 1515, - "src": "2373:7:0", + "referencedDeclaration": 1503, + "src": "1977:7:0", "typeDescriptions": { - "typeIdentifier": "t_function_require_pure$_t_bool_$_t_string_memory_ptr_$returns$__$", - "typeString": "function (bool,string memory) pure" + "typeIdentifier": "t_function_require_pure$_t_bool_$returns$__$", + "typeString": "function (bool) pure" } }, - "id": 115, + "id": 101, "isConstant": false, "isLValue": false, "isPure": false, @@ -19526,32 +18727,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2373:44:0", + "src": "1977:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 116, + "id": 102, "nodeType": "ExpressionStatement", - "src": "2373:44:0" + "src": "1977:21:0" }, { "expression": { "argumentTypes": null, - "id": 119, + "id": 105, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 117, + "id": 103, "name": "initialized", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 55, - "src": "2427:11:0", + "referencedDeclaration": 54, + "src": "2008:11:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -19562,14 +18763,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 118, + "id": 104, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2441:4:0", + "src": "2022:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -19577,32 +18778,32 @@ }, "value": "true" }, - "src": "2427:18:0", + "src": "2008:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 120, + "id": 106, "nodeType": "ExpressionStatement", - "src": "2427:18:0" + "src": "2008:18:0" }, { "expression": { "argumentTypes": null, - "id": 124, + "id": 110, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 121, + "id": 107, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "2455:5:0", + "referencedDeclaration": 5, + "src": "2037:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -19614,18 +18815,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 122, + "id": 108, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2463:2:0", + "referencedDeclaration": 1512, + "src": "2045:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 123, + "id": 109, "isConstant": false, "isLValue": false, "isPure": false, @@ -19633,451 +18834,109 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2463:9:0", + "src": "2045:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "2455:17:0", + "src": "2037:17:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 125, + "id": 111, "nodeType": "ExpressionStatement", - "src": "2455:17:0" + "src": "2037:17:0" }, { "expression": { "argumentTypes": null, - "id": 129, + "id": 115, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 126, + "id": 112, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 63, - "src": "2482:18:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 127, - "name": "block", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1501, - "src": "2503:5:0", - "typeDescriptions": { - "typeIdentifier": "t_magic_block", - "typeString": "block" - } - }, - "id": 128, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "number", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2503:12:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "src": "2482:33:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "id": 130, - "nodeType": "ExpressionStatement", - "src": "2482:33:0" - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 136, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 132, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2535:13:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 131, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2529:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 133, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2529:20:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 134, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2529:27:0", - "typeDescriptions": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - } - }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 135, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2559:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2529:32:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 140, - "nodeType": "IfStatement", - "src": "2525:46:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 137, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2563:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 138, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2563:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 139, - "nodeType": "ExpressionStatement", - "src": "2563:8:0" - } - }, - { - "condition": { - "argumentTypes": null, - "commonType": { - "typeIdentifier": "t_uint256", - "typeString": "uint256" - }, - "id": 146, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftExpression": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "arguments": [ - { - "argumentTypes": null, - "id": 142, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2591:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - } - ], - "expression": { - "argumentTypes": [ - { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - ], - "id": 141, - "isConstant": false, - "isLValue": false, - "isPure": true, - "lValueRequested": false, - "nodeType": "ElementaryTypeNameExpression", - "src": "2585:5:0", - "typeDescriptions": { - "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", - "typeString": "type(bytes storage pointer)" - }, - "typeName": "bytes" - }, - "id": 143, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "typeConversion", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2585:19:0", - "typeDescriptions": { - "typeIdentifier": "t_bytes_memory", - "typeString": "bytes memory" - } - }, - "id": 144, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "memberName": "length", - "nodeType": "MemberAccess", - "referencedDeclaration": null, - "src": "2585:26:0", + "referencedDeclaration": 62, + "src": "2064:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "nodeType": "BinaryOperation", - "operator": ">", - "rightExpression": { - "argumentTypes": null, - "hexValue": "3231", - "id": 145, - "isConstant": false, - "isLValue": false, - "isPure": true, - "kind": "number", - "lValueRequested": false, - "nodeType": "Literal", - "src": "2614:2:0", - "subdenomination": null, - "typeDescriptions": { - "typeIdentifier": "t_rational_21_by_1", - "typeString": "int_const 21" - }, - "value": "21" - }, - "src": "2585:31:0", - "typeDescriptions": { - "typeIdentifier": "t_bool", - "typeString": "bool" - } - }, - "falseBody": null, - "id": 150, - "nodeType": "IfStatement", - "src": "2581:45:0", - "trueBody": { - "expression": { - "argumentTypes": null, - "arguments": [], - "expression": { - "argumentTypes": [], - "id": 147, - "name": "revert", - "nodeType": "Identifier", - "overloadedDeclarations": [ - 1516, - 1517 - ], - "referencedDeclaration": 1516, - "src": "2618:6:0", - "typeDescriptions": { - "typeIdentifier": "t_function_revert_pure$__$returns$__$", - "typeString": "function () pure" - } - }, - "id": 148, - "isConstant": false, - "isLValue": false, - "isPure": false, - "kind": "functionCall", - "lValueRequested": false, - "names": [], - "nodeType": "FunctionCall", - "src": "2618:8:0", - "typeDescriptions": { - "typeIdentifier": "t_tuple$__$", - "typeString": "tuple()" - } - }, - "id": 149, - "nodeType": "ExpressionStatement", - "src": "2618:8:0" - } - }, - { - "expression": { - "argumentTypes": null, - "id": 153, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "id": 151, - "name": "name", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "2636:4:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" - } - }, "nodeType": "Assignment", "operator": "=", "rightHandSide": { - "argumentTypes": null, - "id": 152, - "name": "_contractName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 106, - "src": "2643:13:0", + "argumentTypes": null, + "expression": { + "argumentTypes": null, + "id": 113, + "name": "block", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1490, + "src": "2085:5:0", + "typeDescriptions": { + "typeIdentifier": "t_magic_block", + "typeString": "block" + } + }, + "id": 114, + "isConstant": false, + "isLValue": false, + "isPure": false, + "lValueRequested": false, + "memberName": "number", + "nodeType": "MemberAccess", + "referencedDeclaration": null, + "src": "2085:12:0", "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "src": "2636:20:0", + "src": "2064:33:0", "typeDescriptions": { - "typeIdentifier": "t_string_storage", - "typeString": "string storage ref" + "typeIdentifier": "t_uint256", + "typeString": "uint256" } }, - "id": 154, + "id": 116, "nodeType": "ExpressionStatement", - "src": "2636:20:0" + "src": "2064:33:0" }, { "assignments": [], "declarations": [ { "constant": false, - "id": 156, + "id": 118, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2721:23:0", + "scope": 180, + "src": "2108:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 155, + "id": 117, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "2721:6:0", + "referencedDeclaration": 91, + "src": "2108:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -20085,15 +18944,15 @@ "visibility": "internal" } ], - "id": 157, + "id": 119, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "2721:23:0" + "src": "2108:23:0" }, { "expression": { "argumentTypes": null, - "id": 162, + "id": 124, "isConstant": false, "isLValue": false, "isPure": false, @@ -20102,26 +18961,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 158, + "id": 120, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2754:9:0", + "referencedDeclaration": 118, + "src": "2141:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 160, + "id": 122, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "2754:16:0", + "referencedDeclaration": 78, + "src": "2141:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20132,14 +18991,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 161, + "id": 123, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2773:4:0", + "src": "2160:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20147,20 +19006,20 @@ }, "value": "true" }, - "src": "2754:23:0", + "src": "2141:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 163, + "id": 125, "nodeType": "ExpressionStatement", - "src": "2754:23:0" + "src": "2141:23:0" }, { "expression": { "argumentTypes": null, - "id": 168, + "id": 130, "isConstant": false, "isLValue": false, "isPure": false, @@ -20169,26 +19028,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 164, + "id": 126, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2787:9:0", + "referencedDeclaration": 118, + "src": "2174:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 166, + "id": 128, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "2787:15:0", + "referencedDeclaration": 80, + "src": "2174:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -20199,14 +19058,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 167, + "id": 129, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "2805:4:0", + "src": "2192:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -20214,82 +19073,20 @@ }, "value": "true" }, - "src": "2787:22:0", + "src": "2174:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 169, - "nodeType": "ExpressionStatement", - "src": "2787:22:0" - }, - { - "expression": { - "argumentTypes": null, - "id": 174, - "isConstant": false, - "isLValue": false, - "isPure": false, - "lValueRequested": false, - "leftHandSide": { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "id": 170, - "name": "newMember", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2819:9:0", - "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", - "typeString": "struct Doneth.Member memory" - } - }, - "id": 172, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": true, - "memberName": "memberName", - "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "2819:20:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "nodeType": "Assignment", - "operator": "=", - "rightHandSide": { - "argumentTypes": null, - "id": 173, - "name": "_founderName", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 108, - "src": "2842:12:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string memory" - } - }, - "src": "2819:35:0", - "typeDescriptions": { - "typeIdentifier": "t_string_memory", - "typeString": "string memory" - } - }, - "id": 175, + "id": 131, "nodeType": "ExpressionStatement", - "src": "2819:35:0" + "src": "2174:22:0" }, { "expression": { "argumentTypes": null, - "id": 181, + "id": 137, "isConstant": false, "isLValue": false, "isPure": false, @@ -20298,34 +19095,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 176, + "id": 132, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "2865:7:0", + "referencedDeclaration": 73, + "src": "2206:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 179, + "id": 135, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 177, + "id": 133, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2873:2:0", + "referencedDeclaration": 1512, + "src": "2214:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 178, + "id": 134, "isConstant": false, "isLValue": false, "isPure": false, @@ -20333,7 +19130,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2873:9:0", + "src": "2214:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20344,9 +19141,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "2865:18:0", + "src": "2206:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -20354,26 +19151,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 180, + "id": 136, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 156, - "src": "2886:9:0", + "referencedDeclaration": 118, + "src": "2227:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "2865:30:0", + "src": "2206:30:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 182, + "id": 138, "nodeType": "ExpressionStatement", - "src": "2865:30:0" + "src": "2206:30:0" }, { "expression": { @@ -20383,18 +19180,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 186, + "id": 142, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "2921:2:0", + "referencedDeclaration": 1512, + "src": "2262:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 187, + "id": 143, "isConstant": false, "isLValue": false, "isPure": false, @@ -20402,7 +19199,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2921:9:0", + "src": "2262:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20418,18 +19215,18 @@ ], "expression": { "argumentTypes": null, - "id": 183, + "id": 139, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "2905:10:0", + "referencedDeclaration": 76, + "src": "2246:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 185, + "id": 141, "isConstant": false, "isLValue": false, "isPure": false, @@ -20437,13 +19234,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "2905:15:0", + "src": "2246:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 188, + "id": 144, "isConstant": false, "isLValue": false, "isPure": false, @@ -20451,32 +19248,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2905:26:0", + "src": "2246:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 189, + "id": 145, "nodeType": "ExpressionStatement", - "src": "2905:26:0" + "src": "2246:26:0" }, { "expression": { "argumentTypes": null, - "id": 195, + "id": 151, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 190, + "id": 146, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2981:11:0", + "referencedDeclaration": 58, + "src": "2283:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20490,14 +19287,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 193, + "id": 149, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3011:1:0", + "src": "2313:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -20515,32 +19312,32 @@ ], "expression": { "argumentTypes": null, - "id": 191, + "id": 147, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "2995:11:0", + "referencedDeclaration": 58, + "src": "2297:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 192, + "id": 148, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "2995:15:0", + "referencedDeclaration": 1305, + "src": "2297:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 194, + "id": 150, "isConstant": false, "isLValue": false, "isPure": false, @@ -20548,26 +19345,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "2995:18:0", + "src": "2297:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "2981:32:0", + "src": "2283:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 196, + "id": 152, "nodeType": "ExpressionStatement", - "src": "2981:32:0" + "src": "2283:32:0" }, { "expression": { "argumentTypes": null, - "id": 210, + "id": 166, "isConstant": false, "isLValue": false, "isPure": false, @@ -20578,34 +19375,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 197, + "id": 153, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3023:7:0", + "referencedDeclaration": 73, + "src": "2325:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 200, + "id": 156, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 198, + "id": 154, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3031:2:0", + "referencedDeclaration": 1512, + "src": "2333:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 199, + "id": 155, "isConstant": false, "isLValue": false, "isPure": false, @@ -20613,7 +19410,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3031:9:0", + "src": "2333:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20624,21 +19421,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3023:18:0", + "src": "2325:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 201, + "id": 157, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3023:25:0", + "referencedDeclaration": 82, + "src": "2325:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20652,14 +19449,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 208, + "id": 164, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3081:1:0", + "src": "2383:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -20681,34 +19478,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 202, + "id": 158, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3051:7:0", + "referencedDeclaration": 73, + "src": "2353:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 205, + "id": 161, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 203, + "id": 159, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3059:2:0", + "referencedDeclaration": 1512, + "src": "2361:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 204, + "id": 160, "isConstant": false, "isLValue": false, "isPure": false, @@ -20716,7 +19513,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3059:9:0", + "src": "2361:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20727,41 +19524,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3051:18:0", + "src": "2353:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 206, + "id": 162, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3051:25:0", + "referencedDeclaration": 82, + "src": "2353:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 207, + "id": 163, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "3051:29:0", + "referencedDeclaration": 1305, + "src": "2353:29:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 209, + "id": 165, "isConstant": false, "isLValue": false, "isPure": false, @@ -20769,21 +19566,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3051:32:0", + "src": "2353:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "3023:60:0", + "src": "2325:60:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 211, + "id": 167, "nodeType": "ExpressionStatement", - "src": "3023:60:0" + "src": "2325:60:0" }, { "expression": { @@ -20793,18 +19590,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 213, + "id": 169, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3102:2:0", + "referencedDeclaration": 1512, + "src": "2404:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 214, + "id": 170, "isConstant": false, "isLValue": false, "isPure": false, @@ -20812,7 +19609,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3102:9:0", + "src": "2404:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20821,14 +19618,14 @@ { "argumentTypes": null, "hexValue": "31", - "id": 215, + "id": 171, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "3113:1:0", + "src": "2415:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -20842,34 +19639,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 216, + "id": 172, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "3116:7:0", + "referencedDeclaration": 73, + "src": "2418:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 219, + "id": 175, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 217, + "id": 173, "name": "tx", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1523, - "src": "3124:2:0", + "referencedDeclaration": 1512, + "src": "2426:2:0", "typeDescriptions": { "typeIdentifier": "t_magic_transaction", "typeString": "tx" } }, - "id": 218, + "id": 174, "isConstant": false, "isLValue": false, "isPure": false, @@ -20877,7 +19674,7 @@ "memberName": "origin", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "3124:9:0", + "src": "2426:9:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -20888,21 +19685,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "3116:18:0", + "src": "2418:18:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 220, + "id": 176, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "3116:25:0", + "referencedDeclaration": 82, + "src": "2418:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -20924,18 +19721,18 @@ "typeString": "uint256" } ], - "id": 212, + "id": 168, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "3093:8:0", + "referencedDeclaration": 212, + "src": "2395:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 221, + "id": 177, "isConstant": false, "isLValue": false, "isPure": false, @@ -20943,20 +19740,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "3093:49:0", + "src": "2395:49:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 222, + "id": 178, "nodeType": "ExpressionStatement", - "src": "3093:49:0" + "src": "2395:49:0" } ] }, "documentation": null, - "id": 224, + "id": 180, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -20964,73 +19761,20 @@ "name": "init", "nodeType": "FunctionDefinition", "parameters": { - "id": 109, + "id": 96, "nodeType": "ParameterList", - "parameters": [ - { - "constant": false, - "id": 106, - "name": "_contractName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2313:20:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 105, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2313:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - }, - { - "constant": false, - "id": 108, - "name": "_founderName", - "nodeType": "VariableDeclaration", - "scope": 224, - "src": "2335:19:0", - "stateVariable": false, - "storageLocation": "default", - "typeDescriptions": { - "typeIdentifier": "t_string_memory_ptr", - "typeString": "string" - }, - "typeName": { - "id": 107, - "name": "string", - "nodeType": "ElementaryTypeName", - "src": "2335:6:0", - "typeDescriptions": { - "typeIdentifier": "t_string_storage_ptr", - "typeString": "string" - } - }, - "value": null, - "visibility": "internal" - } - ], - "src": "2312:43:0" + "parameters": [], + "src": "1957:2:0" }, "payable": false, "returnParameters": { - "id": 110, + "id": 97, "nodeType": "ParameterList", "parameters": [], - "src": "2363:0:0" + "src": "1967:0:0" }, - "scope": 1194, - "src": "2299:975:0", + "scope": 1146, + "src": "1944:507:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -21038,21 +19782,21 @@ { "anonymous": false, "documentation": null, - "id": 230, + "id": 186, "name": "Deposit", "nodeType": "EventDefinition", "parameters": { - "id": 229, + "id": 185, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 226, + "id": 182, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3294:12:0", + "scope": 186, + "src": "2471:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21060,10 +19804,10 @@ "typeString": "address" }, "typeName": { - "id": 225, + "id": 181, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3294:7:0", + "src": "2471:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21074,12 +19818,12 @@ }, { "constant": false, - "id": 228, + "id": 184, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 230, - "src": "3308:10:0", + "scope": 186, + "src": "2485:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21087,10 +19831,10 @@ "typeString": "uint256" }, "typeName": { - "id": 227, + "id": 183, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3308:4:0", + "src": "2485:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21100,28 +19844,28 @@ "visibility": "internal" } ], - "src": "3293:26:0" + "src": "2470:26:0" }, - "src": "3280:40:0" + "src": "2457:40:0" }, { "anonymous": false, "documentation": null, - "id": 238, + "id": 194, "name": "Withdraw", "nodeType": "EventDefinition", "parameters": { - "id": 237, + "id": 193, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 232, + "id": 188, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3340:12:0", + "scope": 194, + "src": "2517:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21129,10 +19873,10 @@ "typeString": "address" }, "typeName": { - "id": 231, + "id": 187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3340:7:0", + "src": "2517:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21143,12 +19887,12 @@ }, { "constant": false, - "id": 234, + "id": 190, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3354:10:0", + "scope": 194, + "src": "2531:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21156,10 +19900,10 @@ "typeString": "uint256" }, "typeName": { - "id": 233, + "id": 189, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3354:4:0", + "src": "2531:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21170,12 +19914,12 @@ }, { "constant": false, - "id": 236, + "id": 192, "indexed": false, "name": "newTotalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 238, - "src": "3366:25:0", + "scope": 194, + "src": "2543:25:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21183,10 +19927,10 @@ "typeString": "uint256" }, "typeName": { - "id": 235, + "id": 191, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3366:7:0", + "src": "2543:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21196,28 +19940,28 @@ "visibility": "internal" } ], - "src": "3339:53:0" + "src": "2516:53:0" }, - "src": "3325:68:0" + "src": "2502:68:0" }, { "anonymous": false, "documentation": null, - "id": 248, + "id": 204, "name": "TokenWithdraw", "nodeType": "EventDefinition", "parameters": { - "id": 247, + "id": 203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 240, + "id": 196, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3418:12:0", + "scope": 204, + "src": "2595:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21225,10 +19969,10 @@ "typeString": "address" }, "typeName": { - "id": 239, + "id": 195, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3418:7:0", + "src": "2595:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21239,12 +19983,12 @@ }, { "constant": false, - "id": 242, + "id": 198, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3432:10:0", + "scope": 204, + "src": "2609:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21252,10 +19996,10 @@ "typeString": "uint256" }, "typeName": { - "id": 241, + "id": 197, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3432:4:0", + "src": "2609:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21266,12 +20010,12 @@ }, { "constant": false, - "id": 244, + "id": 200, "indexed": false, "name": "token", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3444:13:0", + "scope": 204, + "src": "2621:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21279,10 +20023,10 @@ "typeString": "address" }, "typeName": { - "id": 243, + "id": 199, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3444:7:0", + "src": "2621:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21293,12 +20037,12 @@ }, { "constant": false, - "id": 246, + "id": 202, "indexed": false, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 248, - "src": "3459:11:0", + "scope": 204, + "src": "2636:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21306,10 +20050,10 @@ "typeString": "uint256" }, "typeName": { - "id": 245, + "id": 201, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3459:4:0", + "src": "2636:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21319,28 +20063,28 @@ "visibility": "internal" } ], - "src": "3417:54:0" + "src": "2594:54:0" }, - "src": "3398:74:0" + "src": "2575:74:0" }, { "anonymous": false, "documentation": null, - "id": 256, + "id": 212, "name": "AddShare", "nodeType": "EventDefinition", "parameters": { - "id": 255, + "id": 211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 250, + "id": 206, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3492:11:0", + "scope": 212, + "src": "2669:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21348,10 +20092,10 @@ "typeString": "address" }, "typeName": { - "id": 249, + "id": 205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3492:7:0", + "src": "2669:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21362,12 +20106,12 @@ }, { "constant": false, - "id": 252, + "id": 208, "indexed": false, "name": "addedShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3505:19:0", + "scope": 212, + "src": "2682:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21375,10 +20119,10 @@ "typeString": "uint256" }, "typeName": { - "id": 251, + "id": 207, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3505:7:0", + "src": "2682:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21389,12 +20133,12 @@ }, { "constant": false, - "id": 254, + "id": 210, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 256, - "src": "3526:22:0", + "scope": 212, + "src": "2703:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21402,10 +20146,10 @@ "typeString": "uint256" }, "typeName": { - "id": 253, + "id": 209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3526:7:0", + "src": "2703:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21415,28 +20159,28 @@ "visibility": "internal" } ], - "src": "3491:58:0" + "src": "2668:58:0" }, - "src": "3477:73:0" + "src": "2654:73:0" }, { "anonymous": false, "documentation": null, - "id": 264, + "id": 220, "name": "RemoveShare", "nodeType": "EventDefinition", "parameters": { - "id": 263, + "id": 219, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 258, + "id": 214, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3573:11:0", + "scope": 220, + "src": "2750:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21444,10 +20188,10 @@ "typeString": "address" }, "typeName": { - "id": 257, + "id": 213, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3573:7:0", + "src": "2750:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21458,12 +20202,12 @@ }, { "constant": false, - "id": 260, + "id": 216, "indexed": false, "name": "removedShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3586:21:0", + "scope": 220, + "src": "2763:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21471,10 +20215,10 @@ "typeString": "uint256" }, "typeName": { - "id": 259, + "id": 215, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3586:7:0", + "src": "2763:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21485,12 +20229,12 @@ }, { "constant": false, - "id": 262, + "id": 218, "indexed": false, "name": "newTotalShares", "nodeType": "VariableDeclaration", - "scope": 264, - "src": "3609:22:0", + "scope": 220, + "src": "2786:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21498,10 +20242,10 @@ "typeString": "uint256" }, "typeName": { - "id": 261, + "id": 217, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3609:7:0", + "src": "2786:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21511,28 +20255,28 @@ "visibility": "internal" } ], - "src": "3572:60:0" + "src": "2749:60:0" }, - "src": "3555:78:0" + "src": "2732:78:0" }, { "anonymous": false, "documentation": null, - "id": 272, + "id": 228, "name": "ChangePrivilege", "nodeType": "EventDefinition", "parameters": { - "id": 271, + "id": 227, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 266, + "id": 222, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3660:11:0", + "scope": 228, + "src": "2837:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21540,10 +20284,10 @@ "typeString": "address" }, "typeName": { - "id": 265, + "id": 221, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3660:7:0", + "src": "2837:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21554,12 +20298,12 @@ }, { "constant": false, - "id": 268, + "id": 224, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3673:13:0", + "scope": 228, + "src": "2850:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21567,10 +20311,10 @@ "typeString": "bool" }, "typeName": { - "id": 267, + "id": 223, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3673:4:0", + "src": "2850:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21581,12 +20325,12 @@ }, { "constant": false, - "id": 270, + "id": 226, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 272, - "src": "3688:13:0", + "scope": 228, + "src": "2865:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21594,10 +20338,10 @@ "typeString": "bool" }, "typeName": { - "id": 269, + "id": 225, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "3688:4:0", + "src": "2865:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -21607,28 +20351,28 @@ "visibility": "internal" } ], - "src": "3659:43:0" + "src": "2836:43:0" }, - "src": "3638:65:0" + "src": "2815:65:0" }, { "anonymous": false, "documentation": null, - "id": 278, + "id": 234, "name": "ChangeContractName", "nodeType": "EventDefinition", "parameters": { - "id": 277, + "id": 233, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 274, + "id": 230, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3733:15:0", + "scope": 234, + "src": "2910:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21636,10 +20380,10 @@ "typeString": "string" }, "typeName": { - "id": 273, + "id": 229, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3733:6:0", + "src": "2910:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21650,12 +20394,12 @@ }, { "constant": false, - "id": 276, + "id": 232, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 278, - "src": "3750:15:0", + "scope": 234, + "src": "2927:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21663,10 +20407,10 @@ "typeString": "string" }, "typeName": { - "id": 275, + "id": 231, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3750:6:0", + "src": "2927:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21676,28 +20420,28 @@ "visibility": "internal" } ], - "src": "3732:34:0" + "src": "2909:34:0" }, - "src": "3708:59:0" + "src": "2885:59:0" }, { "anonymous": false, "documentation": null, - "id": 286, + "id": 242, "name": "ChangeMemberName", "nodeType": "EventDefinition", "parameters": { - "id": 285, + "id": 241, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 280, + "id": 236, "indexed": false, "name": "who", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3795:11:0", + "scope": 242, + "src": "2972:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21705,10 +20449,10 @@ "typeString": "address" }, "typeName": { - "id": 279, + "id": 235, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3795:7:0", + "src": "2972:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21719,12 +20463,12 @@ }, { "constant": false, - "id": 282, + "id": 238, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3808:15:0", + "scope": 242, + "src": "2985:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21732,10 +20476,10 @@ "typeString": "string" }, "typeName": { - "id": 281, + "id": 237, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3808:6:0", + "src": "2985:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21746,12 +20490,12 @@ }, { "constant": false, - "id": 284, + "id": 240, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 286, - "src": "3825:15:0", + "scope": 242, + "src": "3002:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21759,10 +20503,10 @@ "typeString": "string" }, "typeName": { - "id": 283, + "id": 239, "name": "string", "nodeType": "ElementaryTypeName", - "src": "3825:6:0", + "src": "3002:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -21772,28 +20516,28 @@ "visibility": "internal" } ], - "src": "3794:47:0" + "src": "2971:47:0" }, - "src": "3772:70:0" + "src": "2949:70:0" }, { "anonymous": false, "documentation": null, - "id": 294, + "id": 250, "name": "ChangeSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 293, + "id": 249, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 288, + "id": 244, "indexed": false, "name": "contractBalance", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3873:23:0", + "scope": 250, + "src": "3050:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21801,10 +20545,10 @@ "typeString": "uint256" }, "typeName": { - "id": 287, + "id": 243, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3873:7:0", + "src": "3050:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21815,12 +20559,12 @@ }, { "constant": false, - "id": 290, + "id": 246, "indexed": false, "name": "oldValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3898:16:0", + "scope": 250, + "src": "3075:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21828,10 +20572,10 @@ "typeString": "uint256" }, "typeName": { - "id": 289, + "id": 245, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3898:7:0", + "src": "3075:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21842,12 +20586,12 @@ }, { "constant": false, - "id": 292, + "id": 248, "indexed": false, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 294, - "src": "3916:16:0", + "scope": 250, + "src": "3093:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21855,10 +20599,10 @@ "typeString": "uint256" }, "typeName": { - "id": 291, + "id": 247, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "3916:7:0", + "src": "3093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21868,28 +20612,28 @@ "visibility": "internal" } ], - "src": "3872:61:0" + "src": "3049:61:0" }, - "src": "3847:87:0" + "src": "3024:87:0" }, { "anonymous": false, "documentation": null, - "id": 304, + "id": 260, "name": "WithdrawSharedExpense", "nodeType": "EventDefinition", "parameters": { - "id": 303, + "id": 259, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 296, + "id": 252, "indexed": false, "name": "from", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3967:12:0", + "scope": 260, + "src": "3144:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21897,10 +20641,10 @@ "typeString": "address" }, "typeName": { - "id": 295, + "id": 251, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3967:7:0", + "src": "3144:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21911,12 +20655,12 @@ }, { "constant": false, - "id": 298, + "id": 254, "indexed": false, "name": "to", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3981:10:0", + "scope": 260, + "src": "3158:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21924,10 +20668,10 @@ "typeString": "address" }, "typeName": { - "id": 297, + "id": 253, "name": "address", "nodeType": "ElementaryTypeName", - "src": "3981:7:0", + "src": "3158:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -21938,12 +20682,12 @@ }, { "constant": false, - "id": 300, + "id": 256, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "3993:10:0", + "scope": 260, + "src": "3170:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21951,10 +20695,10 @@ "typeString": "uint256" }, "typeName": { - "id": 299, + "id": 255, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "3993:4:0", + "src": "3170:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21965,12 +20709,12 @@ }, { "constant": false, - "id": 302, + "id": 258, "indexed": false, "name": "newSharedExpenseWithdrawn", "nodeType": "VariableDeclaration", - "scope": 304, - "src": "4005:33:0", + "scope": 260, + "src": "3182:33:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -21978,10 +20722,10 @@ "typeString": "uint256" }, "typeName": { - "id": 301, + "id": 257, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4005:7:0", + "src": "3182:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -21991,15 +20735,15 @@ "visibility": "internal" } ], - "src": "3966:73:0" + "src": "3143:73:0" }, - "src": "3939:101:0" + "src": "3116:101:0" }, { "body": { - "id": 314, + "id": 270, "nodeType": "Block", - "src": "4126:47:0", + "src": "3303:47:0", "statements": [ { "expression": { @@ -22009,18 +20753,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 308, + "id": 264, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4144:3:0", + "referencedDeclaration": 1500, + "src": "3321:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 309, + "id": 265, "isConstant": false, "isLValue": false, "isPure": false, @@ -22028,7 +20772,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4144:10:0", + "src": "3321:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22038,18 +20782,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 310, + "id": 266, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4156:3:0", + "referencedDeclaration": 1500, + "src": "3333:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 311, + "id": 267, "isConstant": false, "isLValue": false, "isPure": false, @@ -22057,7 +20801,7 @@ "memberName": "value", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4156:9:0", + "src": "3333:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22075,18 +20819,18 @@ "typeString": "uint256" } ], - "id": 307, + "id": 263, "name": "Deposit", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 230, - "src": "4136:7:0", + "referencedDeclaration": 186, + "src": "3313:7:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 312, + "id": 268, "isConstant": false, "isLValue": false, "isPure": false, @@ -22094,20 +20838,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4136:30:0", + "src": "3313:30:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 313, + "id": 269, "nodeType": "ExpressionStatement", - "src": "4136:30:0" + "src": "3313:30:0" } ] }, "documentation": null, - "id": 315, + "id": 271, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -22115,29 +20859,29 @@ "name": "", "nodeType": "FunctionDefinition", "parameters": { - "id": 305, + "id": 261, "nodeType": "ParameterList", "parameters": [], - "src": "4108:2:0" + "src": "3285:2:0" }, "payable": true, "returnParameters": { - "id": 306, + "id": 262, "nodeType": "ParameterList", "parameters": [], - "src": "4126:0:0" + "src": "3303:0:0" }, - "scope": 1194, - "src": "4099:74:0", + "scope": 1146, + "src": "3276:74:0", "stateMutability": "payable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 333, + "id": 289, "nodeType": "Block", - "src": "4200:95:0", + "src": "3377:95:0", "statements": [ { "condition": { @@ -22146,7 +20890,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 327, + "id": 283, "isConstant": false, "isLValue": false, "isPure": false, @@ -22157,7 +20901,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 320, + "id": 276, "isConstant": false, "isLValue": false, "isPure": false, @@ -22166,18 +20910,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 317, + "id": 273, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4215:3:0", + "referencedDeclaration": 1500, + "src": "3392:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 318, + "id": 274, "isConstant": false, "isLValue": false, "isPure": false, @@ -22185,7 +20929,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4215:10:0", + "src": "3392:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22195,18 +20939,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 319, + "id": 275, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "4229:5:0", + "referencedDeclaration": 5, + "src": "3406:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "4215:19:0", + "src": "3392:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22216,7 +20960,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 326, + "id": 282, "isConstant": false, "isLValue": false, "isPure": false, @@ -22224,41 +20968,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4238:26:0", + "src": "3415:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 321, + "id": 277, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4239:7:0", + "referencedDeclaration": 73, + "src": "3416:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 324, + "id": 280, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 322, + "id": 278, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "4247:3:0", + "referencedDeclaration": 1500, + "src": "3424:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 323, + "id": 279, "isConstant": false, "isLValue": false, "isPure": false, @@ -22266,7 +21010,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4247:10:0", + "src": "3424:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22277,21 +21021,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4239:19:0", + "src": "3416:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 325, + "id": 281, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "4239:25:0", + "referencedDeclaration": 80, + "src": "3416:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22302,37 +21046,37 @@ "typeString": "bool" } }, - "src": "4215:49:0", + "src": "3392:49:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 331, + "id": 287, "nodeType": "IfStatement", - "src": "4211:63:0", + "src": "3388:63:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 328, + "id": 284, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4266:6:0", + "referencedDeclaration": 1505, + "src": "3443:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 329, + "id": 285, "isConstant": false, "isLValue": false, "isPure": false, @@ -22340,47 +21084,47 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4266:8:0", + "src": "3443:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 330, + "id": 286, "nodeType": "ExpressionStatement", - "src": "4266:8:0" + "src": "3443:8:0" } }, { - "id": 332, + "id": 288, "nodeType": "PlaceholderStatement", - "src": "4287:1:0" + "src": "3464:1:0" } ] }, "documentation": null, - "id": 334, + "id": 290, "name": "onlyAdmin", "nodeType": "ModifierDefinition", "parameters": { - "id": 316, + "id": 272, "nodeType": "ParameterList", "parameters": [], - "src": "4197:2:0" + "src": "3374:2:0" }, - "src": "4179:116:0", + "src": "3356:116:0", "visibility": "internal" }, { "body": { - "id": 348, + "id": 304, "nodeType": "Block", - "src": "4336:64:0", + "src": "3513:64:0", "statements": [ { "condition": { "argumentTypes": null, - "id": 342, + "id": 298, "isConstant": false, "isLValue": false, "isPure": false, @@ -22388,33 +21132,33 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "4351:20:0", + "src": "3528:20:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 338, + "id": 294, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "4352:7:0", + "referencedDeclaration": 73, + "src": "3529:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 340, + "id": 296, "indexExpression": { "argumentTypes": null, - "id": 339, + "id": 295, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 336, - "src": "4360:3:0", + "referencedDeclaration": 292, + "src": "3537:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22425,21 +21169,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4352:12:0", + "src": "3529:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 341, + "id": 297, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "4352:19:0", + "referencedDeclaration": 78, + "src": "3529:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -22451,30 +21195,30 @@ } }, "falseBody": null, - "id": 346, + "id": 302, "nodeType": "IfStatement", - "src": "4347:34:0", + "src": "3524:34:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 343, + "id": 299, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "4373:6:0", + "referencedDeclaration": 1505, + "src": "3550:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 344, + "id": 300, "isConstant": false, "isLValue": false, "isPure": false, @@ -22482,39 +21226,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4373:8:0", + "src": "3550:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 345, + "id": 301, "nodeType": "ExpressionStatement", - "src": "4373:8:0" + "src": "3550:8:0" } }, { - "id": 347, + "id": 303, "nodeType": "PlaceholderStatement", - "src": "4392:1:0" + "src": "3569:1:0" } ] }, "documentation": null, - "id": 349, + "id": 305, "name": "onlyExisting", "nodeType": "ModifierDefinition", "parameters": { - "id": 337, + "id": 293, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 336, + "id": 292, "name": "who", "nodeType": "VariableDeclaration", - "scope": 349, - "src": "4323:11:0", + "scope": 305, + "src": "3500:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22522,10 +21266,10 @@ "typeString": "address" }, "typeName": { - "id": 335, + "id": 291, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4323:7:0", + "src": "3500:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22535,34 +21279,34 @@ "visibility": "internal" } ], - "src": "4322:13:0" + "src": "3499:13:0" }, - "src": "4301:99:0", + "src": "3478:99:0", "visibility": "internal" }, { "body": { - "id": 357, + "id": 313, "nodeType": "Block", - "src": "4514:41:0", + "src": "3691:41:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 354, + "id": 310, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4531:10:0", + "referencedDeclaration": 76, + "src": "3708:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 355, + "id": 311, "isConstant": false, "isLValue": true, "isPure": false, @@ -22570,21 +21314,21 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4531:17:0", + "src": "3708:17:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 353, - "id": 356, + "functionReturnParameters": 309, + "id": 312, "nodeType": "Return", - "src": "4524:24:0" + "src": "3701:24:0" } ] }, "documentation": null, - "id": 358, + "id": 314, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22592,23 +21336,23 @@ "name": "getMemberCount", "nodeType": "FunctionDefinition", "parameters": { - "id": 350, + "id": 306, "nodeType": "ParameterList", "parameters": [], - "src": "4481:2:0" + "src": "3658:2:0" }, "payable": false, "returnParameters": { - "id": 353, + "id": 309, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 352, + "id": 308, "name": "", "nodeType": "VariableDeclaration", - "scope": 358, - "src": "4508:4:0", + "scope": 314, + "src": "3685:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22616,10 +21360,10 @@ "typeString": "uint256" }, "typeName": { - "id": 351, + "id": 307, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4508:4:0", + "src": "3685:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22629,45 +21373,45 @@ "visibility": "internal" } ], - "src": "4507:6:0" + "src": "3684:6:0" }, - "scope": 1194, - "src": "4458:97:0", + "scope": 1146, + "src": "3635:97:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 369, + "id": 325, "nodeType": "Block", - "src": "4632:39:0", + "src": "3809:39:0", "statements": [ { "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 365, + "id": 321, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "4649:10:0", + "referencedDeclaration": 76, + "src": "3826:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 367, + "id": 323, "indexExpression": { "argumentTypes": null, - "id": 366, + "id": 322, "name": "key", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 360, - "src": "4660:3:0", + "referencedDeclaration": 316, + "src": "3837:3:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22678,21 +21422,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "4649:15:0", + "src": "3826:15:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "functionReturnParameters": 364, - "id": 368, + "functionReturnParameters": 320, + "id": 324, "nodeType": "Return", - "src": "4642:22:0" + "src": "3819:22:0" } ] }, "documentation": null, - "id": 370, + "id": 326, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22700,16 +21444,16 @@ "name": "getMemberAtKey", "nodeType": "FunctionDefinition", "parameters": { - "id": 361, + "id": 317, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 360, + "id": 316, "name": "key", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4589:8:0", + "scope": 326, + "src": "3766:8:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22717,10 +21461,10 @@ "typeString": "uint256" }, "typeName": { - "id": 359, + "id": 315, "name": "uint", "nodeType": "ElementaryTypeName", - "src": "4589:4:0", + "src": "3766:4:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22730,20 +21474,20 @@ "visibility": "internal" } ], - "src": "4588:10:0" + "src": "3765:10:0" }, "payable": false, "returnParameters": { - "id": 364, + "id": 320, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 363, + "id": 319, "name": "", "nodeType": "VariableDeclaration", - "scope": 370, - "src": "4623:7:0", + "scope": 326, + "src": "3800:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22751,10 +21495,10 @@ "typeString": "address" }, "typeName": { - "id": 362, + "id": 318, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4623:7:0", + "src": "3800:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22764,37 +21508,37 @@ "visibility": "internal" } ], - "src": "4622:9:0" + "src": "3799:9:0" }, - "scope": 1194, - "src": "4565:106:0", + "scope": 1146, + "src": "3742:106:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 378, + "id": 334, "nodeType": "Block", - "src": "4744:36:0", + "src": "3921:36:0", "statements": [ { "expression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 375, + "id": 331, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "4761:4:0", + "referencedDeclaration": 1513, + "src": "3938:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 376, + "id": 332, "isConstant": false, "isLValue": false, "isPure": false, @@ -22802,21 +21546,21 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "4761:12:0", + "src": "3938:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 374, - "id": 377, + "functionReturnParameters": 330, + "id": 333, "nodeType": "Return", - "src": "4754:19:0" + "src": "3931:19:0" } ] }, "documentation": null, - "id": 379, + "id": 335, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -22824,23 +21568,23 @@ "name": "getBalance", "nodeType": "FunctionDefinition", "parameters": { - "id": 371, + "id": 327, "nodeType": "ParameterList", "parameters": [], - "src": "4700:2:0" + "src": "3877:2:0" }, "payable": false, "returnParameters": { - "id": 374, + "id": 330, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 373, + "id": 329, "name": "balance", "nodeType": "VariableDeclaration", - "scope": 379, - "src": "4727:15:0", + "scope": 335, + "src": "3904:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -22848,10 +21592,10 @@ "typeString": "uint256" }, "typeName": { - "id": 372, + "id": 328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4727:7:0", + "src": "3904:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22861,19 +21605,19 @@ "visibility": "internal" } ], - "src": "4726:17:0" + "src": "3903:17:0" }, - "scope": 1194, - "src": "4681:99:0", + "scope": 1146, + "src": "3858:99:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 401, + "id": 357, "nodeType": "Block", - "src": "4945:94:0", + "src": "4122:94:0", "statements": [ { "expression": { @@ -22884,12 +21628,12 @@ "arguments": [ { "argumentTypes": null, - "id": 393, + "id": 349, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 382, - "src": "4970:4:0", + "referencedDeclaration": 338, + "src": "4147:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -22903,20 +21647,20 @@ "typeString": "string memory" } ], - "id": 392, + "id": 348, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "4963:6:0", + "src": "4140:6:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_string_storage_ptr_$", "typeString": "type(string storage pointer)" }, "typeName": "string" }, - "id": 394, + "id": 350, "isConstant": false, "isLValue": false, "isPure": false, @@ -22924,7 +21668,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "4963:12:0", + "src": "4140:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -22932,12 +21676,12 @@ }, { "argumentTypes": null, - "id": 395, + "id": 351, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 384, - "src": "4977:5:0", + "referencedDeclaration": 340, + "src": "4154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -22945,12 +21689,12 @@ }, { "argumentTypes": null, - "id": 396, + "id": 352, "name": "genesisBlockNumber", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 386, - "src": "4984:18:0", + "referencedDeclaration": 342, + "src": "4161:18:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22958,12 +21702,12 @@ }, { "argumentTypes": null, - "id": 397, + "id": 353, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 388, - "src": "5004:11:0", + "referencedDeclaration": 344, + "src": "4181:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -22971,40 +21715,40 @@ }, { "argumentTypes": null, - "id": 398, + "id": 354, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 390, - "src": "5017:14:0", + "referencedDeclaration": 346, + "src": "4194:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 399, + "id": 355, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "4962:70:0", + "src": "4139:70:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_string_memory_$_t_address_$_t_uint256_$_t_uint256_$_t_uint256_$", "typeString": "tuple(string memory,address,uint256,uint256,uint256)" } }, - "functionReturnParameters": 391, - "id": 400, + "functionReturnParameters": 347, + "id": 356, "nodeType": "Return", - "src": "4955:77:0" + "src": "4132:77:0" } ] }, "documentation": null, - "id": 402, + "id": 358, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23012,23 +21756,23 @@ "name": "getContractInfo", "nodeType": "FunctionDefinition", "parameters": { - "id": 380, + "id": 336, "nodeType": "ParameterList", "parameters": [], - "src": "4814:2:0" + "src": "3991:2:0" }, "payable": false, "returnParameters": { - "id": 391, + "id": 347, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 382, + "id": 338, "name": "name", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4841:11:0", + "scope": 358, + "src": "4018:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23036,10 +21780,10 @@ "typeString": "string" }, "typeName": { - "id": 381, + "id": 337, "name": "string", "nodeType": "ElementaryTypeName", - "src": "4841:6:0", + "src": "4018:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23050,11 +21794,11 @@ }, { "constant": false, - "id": 384, + "id": 340, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4854:13:0", + "scope": 358, + "src": "4031:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23062,10 +21806,10 @@ "typeString": "address" }, "typeName": { - "id": 383, + "id": 339, "name": "address", "nodeType": "ElementaryTypeName", - "src": "4854:7:0", + "src": "4031:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23076,11 +21820,11 @@ }, { "constant": false, - "id": 386, + "id": 342, "name": "genesisBlockNumber", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4870:26:0", + "scope": 358, + "src": "4047:26:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23088,10 +21832,10 @@ "typeString": "uint256" }, "typeName": { - "id": 385, + "id": 341, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4870:7:0", + "src": "4047:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23102,11 +21846,11 @@ }, { "constant": false, - "id": 388, + "id": 344, "name": "totalShares", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4899:19:0", + "scope": 358, + "src": "4076:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23114,10 +21858,10 @@ "typeString": "uint256" }, "typeName": { - "id": 387, + "id": 343, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4899:7:0", + "src": "4076:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23128,11 +21872,11 @@ }, { "constant": false, - "id": 390, + "id": 346, "name": "totalWithdrawn", "nodeType": "VariableDeclaration", - "scope": 402, - "src": "4921:22:0", + "scope": 358, + "src": "4098:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23140,10 +21884,10 @@ "typeString": "uint256" }, "typeName": { - "id": 389, + "id": 345, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "4921:7:0", + "src": "4098:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23153,47 +21897,47 @@ "visibility": "internal" } ], - "src": "4840:104:0" + "src": "4017:104:0" }, - "scope": 1194, - "src": "4790:249:0", + "scope": 1146, + "src": "3967:249:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 434, + "id": 390, "nodeType": "Block", - "src": "5202:111:0", + "src": "4379:111:0", "statements": [ { "assignments": [ - 419 + 375 ], "declarations": [ { "constant": false, - "id": 419, + "id": 375, "name": "m", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5210:15:0", + "scope": 391, + "src": "4387:15:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 418, + "id": 374, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5210:6:0", + "referencedDeclaration": 91, + "src": "4387:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -23201,31 +21945,31 @@ "visibility": "internal" } ], - "id": 423, + "id": 379, "initialValue": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 420, + "id": 376, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5228:7:0", + "referencedDeclaration": 73, + "src": "4405:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 422, + "id": 378, "indexExpression": { "argumentTypes": null, - "id": 421, + "id": 377, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5236:8:0", + "referencedDeclaration": 360, + "src": "4413:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23236,14 +21980,14 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5228:17:0", + "src": "4405:17:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, "nodeType": "VariableDeclarationStatement", - "src": "5210:35:0" + "src": "4387:35:0" }, { "expression": { @@ -23253,26 +21997,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 424, + "id": 380, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5261:1:0", + "referencedDeclaration": 375, + "src": "4438:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 425, + "id": 381, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5261:7:0", + "referencedDeclaration": 80, + "src": "4438:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23282,26 +22026,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 426, + "id": 382, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5270:1:0", + "referencedDeclaration": 375, + "src": "4447:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 427, + "id": 383, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "5270:8:0", + "referencedDeclaration": 82, + "src": "4447:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23311,26 +22055,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 428, + "id": 384, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5280:1:0", + "referencedDeclaration": 375, + "src": "4457:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 429, + "id": 385, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "5280:11:0", + "referencedDeclaration": 84, + "src": "4457:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23340,54 +22084,54 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 430, + "id": 386, "name": "m", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 419, - "src": "5293:1:0", + "referencedDeclaration": 375, + "src": "4470:1:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 431, + "id": 387, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "5293:12:0", + "referencedDeclaration": 86, + "src": "4470:12:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } } ], - "id": 432, + "id": 388, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "5260:46:0", + "src": "4437:46:0", "typeDescriptions": { "typeIdentifier": "t_tuple$_t_bool_$_t_uint256_$_t_uint256_$_t_string_memory_$", "typeString": "tuple(bool,uint256,uint256,string memory)" } }, - "functionReturnParameters": 417, - "id": 433, + "functionReturnParameters": 373, + "id": 389, "nodeType": "Return", - "src": "5253:53:0" + "src": "4430:53:0" } ] }, "documentation": null, - "id": 435, + "id": 391, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23396,49 +22140,49 @@ "arguments": [ { "argumentTypes": null, - "id": 407, + "id": 363, "name": "_address", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 404, - "src": "5118:8:0", + "referencedDeclaration": 360, + "src": "4295:8:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 408, + "id": 364, "modifierName": { "argumentTypes": null, - "id": 406, + "id": 362, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "5105:12:0", + "referencedDeclaration": 305, + "src": "4282:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "5105:22:0" + "src": "4282:22:0" } ], "name": "returnMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 405, + "id": 361, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 404, + "id": 360, "name": "_address", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5071:16:0", + "scope": 391, + "src": "4248:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23446,10 +22190,10 @@ "typeString": "address" }, "typeName": { - "id": 403, + "id": 359, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5071:7:0", + "src": "4248:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23459,20 +22203,20 @@ "visibility": "internal" } ], - "src": "5070:18:0" + "src": "4247:18:0" }, "payable": false, "returnParameters": { - "id": 417, + "id": 373, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 410, + "id": 366, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5136:10:0", + "scope": 391, + "src": "4313:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23480,10 +22224,10 @@ "typeString": "bool" }, "typeName": { - "id": 409, + "id": 365, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5136:4:0", + "src": "4313:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -23494,11 +22238,11 @@ }, { "constant": false, - "id": 412, + "id": 368, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5148:14:0", + "scope": 391, + "src": "4325:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23506,10 +22250,10 @@ "typeString": "uint256" }, "typeName": { - "id": 411, + "id": 367, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5148:7:0", + "src": "4325:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23520,11 +22264,11 @@ }, { "constant": false, - "id": 414, + "id": 370, "name": "withdrawn", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5164:17:0", + "scope": 391, + "src": "4341:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23532,10 +22276,10 @@ "typeString": "uint256" }, "typeName": { - "id": 413, + "id": 369, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5164:7:0", + "src": "4341:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23546,11 +22290,11 @@ }, { "constant": false, - "id": 416, + "id": 372, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 435, - "src": "5183:17:0", + "scope": 391, + "src": "4360:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23558,10 +22302,10 @@ "typeString": "string" }, "typeName": { - "id": 415, + "id": 371, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5183:6:0", + "src": "4360:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -23571,19 +22315,19 @@ "visibility": "internal" } ], - "src": "5135:66:0" + "src": "4312:66:0" }, - "scope": 1194, - "src": "5049:264:0", + "scope": 1146, + "src": "4226:264:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 451, + "id": 407, "nodeType": "Block", - "src": "5394:200:0", + "src": "4571:61:0", "statements": [ { "expression": { @@ -23594,14 +22338,14 @@ "arguments": [ { "argumentTypes": null, - "id": 447, + "id": 403, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "5442:4:0", + "referencedDeclaration": 1513, + "src": "4619:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } } @@ -23609,24 +22353,24 @@ "expression": { "argumentTypes": [ { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } ], - "id": 446, + "id": 402, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5434:7:0", + "src": "4611:7:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_address_$", "typeString": "type(address)" }, "typeName": "address" }, - "id": 448, + "id": 404, "isConstant": false, "isLValue": false, "isPure": false, @@ -23634,7 +22378,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5434:13:0", + "src": "4611:13:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23653,12 +22397,12 @@ "arguments": [ { "argumentTypes": null, - "id": 443, + "id": 399, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 437, - "src": "5417:5:0", + "referencedDeclaration": 393, + "src": "4594:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23672,18 +22416,18 @@ "typeString": "address" } ], - "id": 442, + "id": 398, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "5411:5:0", + "referencedDeclaration": 1213, + "src": "4588:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 444, + "id": 400, "isConstant": false, "isLValue": false, "isPure": false, @@ -23691,27 +22435,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:12:0", + "src": "4588:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 445, + "id": 401, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "balanceOf", "nodeType": "MemberAccess", - "referencedDeclaration": 1203, - "src": "5411:22:0", + "referencedDeclaration": 1155, + "src": "4588:22:0", "typeDescriptions": { "typeIdentifier": "t_function_external_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view external returns (uint256)" } }, - "id": 449, + "id": 405, "isConstant": false, "isLValue": false, "isPure": false, @@ -23719,21 +22463,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5411:37:0", + "src": "4588:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 441, - "id": 450, + "functionReturnParameters": 397, + "id": 406, "nodeType": "Return", - "src": "5404:44:0" + "src": "4581:44:0" } ] }, "documentation": null, - "id": 452, + "id": 408, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -23741,16 +22485,16 @@ "name": "checkERC20Balance", "nodeType": "FunctionDefinition", "parameters": { - "id": 438, + "id": 394, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 437, + "id": 393, "name": "token", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5346:13:0", + "scope": 408, + "src": "4523:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23758,10 +22502,10 @@ "typeString": "address" }, "typeName": { - "id": 436, + "id": 392, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5346:7:0", + "src": "4523:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23771,20 +22515,20 @@ "visibility": "internal" } ], - "src": "5345:15:0" + "src": "4522:15:0" }, "payable": false, "returnParameters": { - "id": 441, + "id": 397, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 440, + "id": 396, "name": "", "nodeType": "VariableDeclaration", - "scope": 452, - "src": "5385:7:0", + "scope": 408, + "src": "4562:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -23792,10 +22536,10 @@ "typeString": "uint256" }, "typeName": { - "id": 439, + "id": 395, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5385:7:0", + "src": "4562:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -23805,19 +22549,19 @@ "visibility": "internal" } ], - "src": "5384:9:0" + "src": "4561:9:0" }, - "scope": 1194, - "src": "5319:275:0", + "scope": 1146, + "src": "4496:136:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 521, + "id": 477, "nodeType": "Block", - "src": "5746:399:0", + "src": "4784:399:0", "statements": [ { "condition": { @@ -23826,26 +22570,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 465, + "id": 421, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "5817:7:0", + "referencedDeclaration": 73, + "src": "4855:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 467, + "id": 423, "indexExpression": { "argumentTypes": null, - "id": 466, + "id": 422, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "5825:3:0", + "referencedDeclaration": 410, + "src": "4863:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -23856,51 +22600,51 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "5817:12:0", + "src": "4855:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 468, + "id": 424, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5817:19:0", + "referencedDeclaration": 78, + "src": "4855:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 472, + "id": 428, "nodeType": "IfStatement", - "src": "5813:33:0", + "src": "4851:33:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 469, + "id": 425, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5838:6:0", + "referencedDeclaration": 1505, + "src": "4876:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 470, + "id": 426, "isConstant": false, "isLValue": false, "isPure": false, @@ -23908,15 +22652,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5838:8:0", + "src": "4876:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 471, + "id": 427, "nodeType": "ExpressionStatement", - "src": "5838:8:0" + "src": "4876:8:0" } }, { @@ -23926,7 +22670,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 478, + "id": 434, "isConstant": false, "isLValue": false, "isPure": false, @@ -23938,12 +22682,12 @@ "arguments": [ { "argumentTypes": null, - "id": 474, + "id": 430, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "5866:10:0", + "referencedDeclaration": 416, + "src": "4904:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -23957,20 +22701,20 @@ "typeString": "string memory" } ], - "id": 473, + "id": 429, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "5860:5:0", + "src": "4898:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 475, + "id": 431, "isConstant": false, "isLValue": false, "isPure": false, @@ -23978,13 +22722,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5860:17:0", + "src": "4898:17:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 476, + "id": 432, "isConstant": false, "isLValue": false, "isPure": false, @@ -23992,7 +22736,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "5860:24:0", + "src": "4898:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24003,14 +22747,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 477, + "id": 433, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "5887:2:0", + "src": "4925:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -24018,37 +22762,37 @@ }, "value": "21" }, - "src": "5860:29:0", + "src": "4898:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 482, + "id": 438, "nodeType": "IfStatement", - "src": "5856:43:0", + "src": "4894:43:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 479, + "id": 435, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "5891:6:0", + "referencedDeclaration": 1505, + "src": "4929:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 480, + "id": 436, "isConstant": false, "isLValue": false, "isPure": false, @@ -24056,15 +22800,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "5891:8:0", + "src": "4929:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 481, + "id": 437, "nodeType": "ExpressionStatement", - "src": "5891:8:0" + "src": "4929:8:0" } }, { @@ -24072,26 +22816,26 @@ "declarations": [ { "constant": false, - "id": 484, + "id": 440, "name": "newMember", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5910:23:0", + "scope": 478, + "src": "4948:23:0", "stateVariable": false, "storageLocation": "memory", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member" }, "typeName": { "contractScope": null, - "id": 483, + "id": 439, "name": "Member", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 92, - "src": "5910:6:0", + "referencedDeclaration": 91, + "src": "4948:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage_ptr", + "typeIdentifier": "t_struct$_Member_$91_storage_ptr", "typeString": "struct Doneth.Member" } }, @@ -24099,15 +22843,15 @@ "visibility": "internal" } ], - "id": 485, + "id": 441, "initialValue": null, "nodeType": "VariableDeclarationStatement", - "src": "5910:23:0" + "src": "4948:23:0" }, { "expression": { "argumentTypes": null, - "id": 490, + "id": 446, "isConstant": false, "isLValue": false, "isPure": false, @@ -24116,26 +22860,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 486, + "id": 442, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5943:9:0", + "referencedDeclaration": 440, + "src": "4981:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 488, + "id": 444, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "exists", "nodeType": "MemberAccess", - "referencedDeclaration": 79, - "src": "5943:16:0", + "referencedDeclaration": 78, + "src": "4981:16:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24146,14 +22890,14 @@ "rightHandSide": { "argumentTypes": null, "hexValue": "74727565", - "id": 489, + "id": 445, "isConstant": false, "isLValue": false, "isPure": true, "kind": "bool", "lValueRequested": false, "nodeType": "Literal", - "src": "5962:4:0", + "src": "5000:4:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_bool", @@ -24161,20 +22905,20 @@ }, "value": "true" }, - "src": "5943:23:0", + "src": "4981:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 491, + "id": 447, "nodeType": "ExpressionStatement", - "src": "5943:23:0" + "src": "4981:23:0" }, { "expression": { "argumentTypes": null, - "id": 496, + "id": 452, "isConstant": false, "isLValue": false, "isPure": false, @@ -24183,26 +22927,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 492, + "id": 448, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "5976:9:0", + "referencedDeclaration": 440, + "src": "5014:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 494, + "id": 450, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "5976:15:0", + "referencedDeclaration": 80, + "src": "5014:15:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24212,31 +22956,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 495, + "id": 451, "name": "admin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 458, - "src": "5994:5:0", + "referencedDeclaration": 414, + "src": "5032:5:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "5976:23:0", + "src": "5014:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 497, + "id": 453, "nodeType": "ExpressionStatement", - "src": "5976:23:0" + "src": "5014:23:0" }, { "expression": { "argumentTypes": null, - "id": 502, + "id": 458, "isConstant": false, "isLValue": false, "isPure": false, @@ -24245,26 +22989,26 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 498, + "id": 454, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6009:9:0", + "referencedDeclaration": 440, + "src": "5047:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "id": 500, + "id": 456, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6009:20:0", + "referencedDeclaration": 86, + "src": "5047:20:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" @@ -24274,31 +23018,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 501, + "id": 457, "name": "memberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 460, - "src": "6032:10:0", + "referencedDeclaration": 416, + "src": "5070:10:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6009:33:0", + "src": "5047:33:0", "typeDescriptions": { "typeIdentifier": "t_string_memory", "typeString": "string memory" } }, - "id": 503, + "id": 459, "nodeType": "ExpressionStatement", - "src": "6009:33:0" + "src": "5047:33:0" }, { "expression": { "argumentTypes": null, - "id": 508, + "id": 464, "isConstant": false, "isLValue": false, "isPure": false, @@ -24307,26 +23051,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 504, + "id": 460, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6053:7:0", + "referencedDeclaration": 73, + "src": "5091:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 506, + "id": 462, "indexExpression": { "argumentTypes": null, - "id": 505, + "id": 461, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6061:3:0", + "referencedDeclaration": 410, + "src": "5099:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24337,9 +23081,9 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "6053:12:0", + "src": "5091:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, @@ -24347,26 +23091,26 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 507, + "id": 463, "name": "newMember", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 484, - "src": "6068:9:0", + "referencedDeclaration": 440, + "src": "5106:9:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_memory_ptr", + "typeIdentifier": "t_struct$_Member_$91_memory_ptr", "typeString": "struct Doneth.Member memory" } }, - "src": "6053:24:0", + "src": "5091:24:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 509, + "id": 465, "nodeType": "ExpressionStatement", - "src": "6053:24:0" + "src": "5091:24:0" }, { "expression": { @@ -24374,12 +23118,12 @@ "arguments": [ { "argumentTypes": null, - "id": 513, + "id": 469, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6103:3:0", + "referencedDeclaration": 410, + "src": "5141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24395,18 +23139,18 @@ ], "expression": { "argumentTypes": null, - "id": 510, + "id": 466, "name": "memberKeys", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 77, - "src": "6087:10:0", + "referencedDeclaration": 76, + "src": "5125:10:0", "typeDescriptions": { "typeIdentifier": "t_array$_t_address_$dyn_storage", "typeString": "address[] storage ref" } }, - "id": 512, + "id": 468, "isConstant": false, "isLValue": false, "isPure": false, @@ -24414,13 +23158,13 @@ "memberName": "push", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6087:15:0", + "src": "5125:15:0", "typeDescriptions": { "typeIdentifier": "t_function_arraypush_nonpayable$_t_address_$returns$_t_uint256_$", "typeString": "function (address) returns (uint256)" } }, - "id": 514, + "id": 470, "isConstant": false, "isLValue": false, "isPure": false, @@ -24428,15 +23172,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6087:20:0", + "src": "5125:20:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 515, + "id": 471, "nodeType": "ExpressionStatement", - "src": "6087:20:0" + "src": "5125:20:0" }, { "expression": { @@ -24444,12 +23188,12 @@ "arguments": [ { "argumentTypes": null, - "id": 517, + "id": 473, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 454, - "src": "6126:3:0", + "referencedDeclaration": 410, + "src": "5164:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24457,12 +23201,12 @@ }, { "argumentTypes": null, - "id": 518, + "id": 474, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 456, - "src": "6131:6:0", + "referencedDeclaration": 412, + "src": "5169:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24480,18 +23224,18 @@ "typeString": "uint256" } ], - "id": 516, + "id": 472, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "6117:8:0", + "referencedDeclaration": 770, + "src": "5155:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 519, + "id": 475, "isConstant": false, "isLValue": false, "isPure": false, @@ -24499,57 +23243,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6117:21:0", + "src": "5155:21:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 520, + "id": 476, "nodeType": "ExpressionStatement", - "src": "6117:21:0" + "src": "5155:21:0" } ] }, "documentation": null, - "id": 522, + "id": 478, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 463, + "id": 419, "modifierName": { "argumentTypes": null, - "id": 462, + "id": 418, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "5734:9:0", + "referencedDeclaration": 290, + "src": "4772:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "5734:11:0" + "src": "4772:11:0" } ], "name": "addMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 461, + "id": 417, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 454, + "id": 410, "name": "who", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5667:11:0", + "scope": 478, + "src": "4705:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24557,10 +23301,10 @@ "typeString": "address" }, "typeName": { - "id": 453, + "id": 409, "name": "address", "nodeType": "ElementaryTypeName", - "src": "5667:7:0", + "src": "4705:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24571,11 +23315,11 @@ }, { "constant": false, - "id": 456, + "id": 412, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5680:14:0", + "scope": 478, + "src": "4718:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24583,10 +23327,10 @@ "typeString": "uint256" }, "typeName": { - "id": 455, + "id": 411, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "5680:7:0", + "src": "4718:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -24597,11 +23341,11 @@ }, { "constant": false, - "id": 458, + "id": 414, "name": "admin", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5696:10:0", + "scope": 478, + "src": "4734:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24609,10 +23353,10 @@ "typeString": "bool" }, "typeName": { - "id": 457, + "id": 413, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "5696:4:0", + "src": "4734:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24623,11 +23367,11 @@ }, { "constant": false, - "id": 460, + "id": 416, "name": "memberName", "nodeType": "VariableDeclaration", - "scope": 522, - "src": "5708:17:0", + "scope": 478, + "src": "4746:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -24635,10 +23379,10 @@ "typeString": "string" }, "typeName": { - "id": 459, + "id": 415, "name": "string", "nodeType": "ElementaryTypeName", - "src": "5708:6:0", + "src": "4746:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -24648,26 +23392,26 @@ "visibility": "internal" } ], - "src": "5666:60:0" + "src": "4704:60:0" }, "payable": false, "returnParameters": { - "id": 464, + "id": 420, "nodeType": "ParameterList", "parameters": [], - "src": "5746:0:0" + "src": "4784:0:0" }, - "scope": 1194, - "src": "5648:497:0", + "scope": 1146, + "src": "4686:497:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 575, + "id": 531, "nodeType": "Block", - "src": "6248:244:0", + "src": "5286:244:0", "statements": [ { "condition": { @@ -24676,7 +23420,7 @@ "typeIdentifier": "t_bytes32", "typeString": "bytes32" }, - "id": 544, + "id": 500, "isConstant": false, "isLValue": false, "isPure": false, @@ -24690,26 +23434,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 536, + "id": 492, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6267:7:0", + "referencedDeclaration": 73, + "src": "5305:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 538, + "id": 494, "indexExpression": { "argumentTypes": null, - "id": 537, + "id": 493, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6275:3:0", + "referencedDeclaration": 480, + "src": "5313:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24720,21 +23464,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6267:12:0", + "src": "5305:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 539, + "id": 495, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6267:23:0", + "referencedDeclaration": 86, + "src": "5305:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -24748,18 +23492,18 @@ "typeString": "string storage ref" } ], - "id": 535, + "id": 491, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6262:4:0", + "referencedDeclaration": 1510, + "src": "5300:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 540, + "id": 496, "isConstant": false, "isLValue": false, "isPure": false, @@ -24767,7 +23511,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6262:29:0", + "src": "5300:29:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" @@ -24780,12 +23524,12 @@ "arguments": [ { "argumentTypes": null, - "id": 542, + "id": 498, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6300:4:0", + "referencedDeclaration": 486, + "src": "5338:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -24799,18 +23543,18 @@ "typeString": "string memory" } ], - "id": 541, + "id": 497, "name": "sha3", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1521, - "src": "6295:4:0", + "referencedDeclaration": 1510, + "src": "5333:4:0", "typeDescriptions": { "typeIdentifier": "t_function_sha3_pure$__$returns$_t_bytes32_$", "typeString": "function () pure returns (bytes32)" } }, - "id": 543, + "id": 499, "isConstant": false, "isLValue": false, "isPure": false, @@ -24818,34 +23562,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6295:10:0", + "src": "5333:10:0", "typeDescriptions": { "typeIdentifier": "t_bytes32", "typeString": "bytes32" } }, - "src": "6262:43:0", + "src": "5300:43:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 550, + "id": 506, "nodeType": "IfStatement", - "src": "6258:76:0", + "src": "5296:76:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 546, + "id": 502, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6324:3:0", + "referencedDeclaration": 480, + "src": "5362:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24853,12 +23597,12 @@ }, { "argumentTypes": null, - "id": 547, + "id": 503, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 530, - "src": "6329:4:0", + "referencedDeclaration": 486, + "src": "5367:4:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -24876,18 +23620,18 @@ "typeString": "string memory" } ], - "id": 545, + "id": 501, "name": "changeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 633, - "src": "6307:16:0", + "referencedDeclaration": 589, + "src": "5345:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory)" } }, - "id": 548, + "id": 504, "isConstant": false, "isLValue": false, "isPure": false, @@ -24895,15 +23639,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6307:27:0", + "src": "5345:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 549, + "id": 505, "nodeType": "ExpressionStatement", - "src": "6307:27:0" + "src": "5345:27:0" } }, { @@ -24913,7 +23657,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 556, + "id": 512, "isConstant": false, "isLValue": false, "isPure": false, @@ -24924,26 +23668,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 551, + "id": 507, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6348:7:0", + "referencedDeclaration": 73, + "src": "5386:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 553, + "id": 509, "indexExpression": { "argumentTypes": null, - "id": 552, + "id": 508, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6356:3:0", + "referencedDeclaration": 480, + "src": "5394:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -24954,21 +23698,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6348:12:0", + "src": "5386:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 554, + "id": 510, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6348:18:0", + "referencedDeclaration": 80, + "src": "5386:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -24978,39 +23722,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 555, + "id": 511, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6370:7:0", + "referencedDeclaration": 484, + "src": "5408:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6348:29:0", + "src": "5386:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 562, + "id": 518, "nodeType": "IfStatement", - "src": "6344:69:0", + "src": "5382:69:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 558, + "id": 514, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6400:3:0", + "referencedDeclaration": 480, + "src": "5438:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25018,12 +23762,12 @@ }, { "argumentTypes": null, - "id": 559, + "id": 515, "name": "isAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 528, - "src": "6405:7:0", + "referencedDeclaration": 484, + "src": "5443:7:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25041,18 +23785,18 @@ "typeString": "bool" } ], - "id": 557, + "id": 513, "name": "changeAdminPrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 659, - "src": "6379:20:0", + "referencedDeclaration": 615, + "src": "5417:20:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_bool_$returns$__$", "typeString": "function (address,bool)" } }, - "id": 560, + "id": 516, "isConstant": false, "isLValue": false, "isPure": false, @@ -25060,15 +23804,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6379:34:0", + "src": "5417:34:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 561, + "id": 517, "nodeType": "ExpressionStatement", - "src": "6379:34:0" + "src": "5417:34:0" } }, { @@ -25078,7 +23822,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 568, + "id": 524, "isConstant": false, "isLValue": false, "isPure": false, @@ -25089,26 +23833,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 563, + "id": 519, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6427:7:0", + "referencedDeclaration": 73, + "src": "5465:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 565, + "id": 521, "indexExpression": { "argumentTypes": null, - "id": 564, + "id": 520, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6435:3:0", + "referencedDeclaration": 480, + "src": "5473:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25119,21 +23863,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6427:12:0", + "src": "5465:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 566, + "id": 522, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "6427:19:0", + "referencedDeclaration": 82, + "src": "5465:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25143,39 +23887,39 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 567, + "id": 523, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6450:6:0", + "referencedDeclaration": 482, + "src": "5488:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "6427:29:0", + "src": "5465:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 574, + "id": 530, "nodeType": "IfStatement", - "src": "6423:62:0", + "src": "5461:62:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 570, + "id": 526, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 524, - "src": "6473:3:0", + "referencedDeclaration": 480, + "src": "5511:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25183,12 +23927,12 @@ }, { "argumentTypes": null, - "id": 571, + "id": 527, "name": "shares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 526, - "src": "6478:6:0", + "referencedDeclaration": 482, + "src": "5516:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25206,18 +23950,18 @@ "typeString": "uint256" } ], - "id": 569, + "id": 525, "name": "allocateShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 772, - "src": "6458:14:0", + "referencedDeclaration": 728, + "src": "5496:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 572, + "id": 528, "isConstant": false, "isLValue": false, "isPure": false, @@ -25225,58 +23969,58 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6458:27:0", + "src": "5496:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 573, + "id": 529, "nodeType": "ExpressionStatement", - "src": "6458:27:0" + "src": "5496:27:0" } } ] }, "documentation": null, - "id": 576, + "id": 532, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 533, + "id": 489, "modifierName": { "argumentTypes": null, - "id": 532, + "id": 488, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6236:9:0", + "referencedDeclaration": 290, + "src": "5274:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6236:11:0" + "src": "5274:11:0" } ], "name": "updateMember", "nodeType": "FunctionDefinition", "parameters": { - "id": 531, + "id": 487, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 524, + "id": 480, "name": "who", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6173:11:0", + "scope": 532, + "src": "5211:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25284,10 +24028,10 @@ "typeString": "address" }, "typeName": { - "id": 523, + "id": 479, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6173:7:0", + "src": "5211:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25298,11 +24042,11 @@ }, { "constant": false, - "id": 526, + "id": 482, "name": "shares", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6186:14:0", + "scope": 532, + "src": "5224:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25310,10 +24054,10 @@ "typeString": "uint256" }, "typeName": { - "id": 525, + "id": 481, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "6186:7:0", + "src": "5224:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25324,11 +24068,11 @@ }, { "constant": false, - "id": 528, + "id": 484, "name": "isAdmin", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6202:12:0", + "scope": 532, + "src": "5240:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25336,10 +24080,10 @@ "typeString": "bool" }, "typeName": { - "id": 527, + "id": 483, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6202:4:0", + "src": "5240:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25350,11 +24094,11 @@ }, { "constant": false, - "id": 530, + "id": 486, "name": "name", "nodeType": "VariableDeclaration", - "scope": 576, - "src": "6216:11:0", + "scope": 532, + "src": "5254:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -25362,10 +24106,10 @@ "typeString": "string" }, "typeName": { - "id": 529, + "id": 485, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6216:6:0", + "src": "5254:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -25375,26 +24119,26 @@ "visibility": "internal" } ], - "src": "6172:56:0" + "src": "5210:56:0" }, "payable": false, "returnParameters": { - "id": 534, + "id": 490, "nodeType": "ParameterList", "parameters": [], - "src": "6248:0:0" + "src": "5286:0:0" }, - "scope": 1194, - "src": "6151:341:0", + "scope": 1146, + "src": "5189:341:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 632, + "id": 588, "nodeType": "Block", - "src": "6638:259:0", + "src": "5676:259:0", "statements": [ { "condition": { @@ -25403,7 +24147,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 601, + "id": 557, "isConstant": false, "isLValue": false, "isPure": false, @@ -25414,7 +24158,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 594, + "id": 550, "isConstant": false, "isLValue": false, "isPure": false, @@ -25425,7 +24169,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 589, + "id": 545, "isConstant": false, "isLValue": false, "isPure": false, @@ -25434,18 +24178,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 586, + "id": 542, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6652:3:0", + "referencedDeclaration": 1500, + "src": "5690:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 587, + "id": 543, "isConstant": false, "isLValue": false, "isPure": false, @@ -25453,7 +24197,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6652:10:0", + "src": "5690:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25463,18 +24207,18 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 588, + "id": 544, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6666:3:0", + "referencedDeclaration": 534, + "src": "5704:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6652:17:0", + "src": "5690:17:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25488,7 +24232,7 @@ "typeIdentifier": "t_address", "typeString": "address" }, - "id": 593, + "id": 549, "isConstant": false, "isLValue": false, "isPure": false, @@ -25497,18 +24241,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 590, + "id": 546, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6673:3:0", + "referencedDeclaration": 1500, + "src": "5711:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 591, + "id": 547, "isConstant": false, "isLValue": false, "isPure": false, @@ -25516,7 +24260,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6673:10:0", + "src": "5711:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25526,24 +24270,24 @@ "operator": "!=", "rightExpression": { "argumentTypes": null, - "id": 592, + "id": 548, "name": "owner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 3, - "src": "6687:5:0", + "referencedDeclaration": 5, + "src": "5725:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "src": "6673:19:0", + "src": "5711:19:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "6652:40:0", + "src": "5690:40:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25553,7 +24297,7 @@ "operator": "&&", "rightExpression": { "argumentTypes": null, - "id": 600, + "id": 556, "isConstant": false, "isLValue": false, "isPure": false, @@ -25561,41 +24305,41 @@ "nodeType": "UnaryOperation", "operator": "!", "prefix": true, - "src": "6696:26:0", + "src": "5734:26:0", "subExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 595, + "id": 551, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6697:7:0", + "referencedDeclaration": 73, + "src": "5735:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 598, + "id": 554, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 596, + "id": 552, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "6705:3:0", + "referencedDeclaration": 1500, + "src": "5743:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 597, + "id": 553, "isConstant": false, "isLValue": false, "isPure": false, @@ -25603,7 +24347,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6705:10:0", + "src": "5743:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25614,21 +24358,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6697:19:0", + "src": "5735:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 599, + "id": 555, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "6697:25:0", + "referencedDeclaration": 80, + "src": "5735:25:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -25639,37 +24383,37 @@ "typeString": "bool" } }, - "src": "6652:70:0", + "src": "5690:70:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 605, + "id": 561, "nodeType": "IfStatement", - "src": "6648:84:0", + "src": "5686:84:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 602, + "id": 558, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6724:6:0", + "referencedDeclaration": 1505, + "src": "5762:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 603, + "id": 559, "isConstant": false, "isLValue": false, "isPure": false, @@ -25677,15 +24421,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6724:8:0", + "src": "5762:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 604, + "id": 560, "nodeType": "ExpressionStatement", - "src": "6724:8:0" + "src": "5762:8:0" } }, { @@ -25695,7 +24439,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 611, + "id": 567, "isConstant": false, "isLValue": false, "isPure": false, @@ -25707,12 +24451,12 @@ "arguments": [ { "argumentTypes": null, - "id": 607, + "id": 563, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6752:7:0", + "referencedDeclaration": 536, + "src": "5790:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -25726,20 +24470,20 @@ "typeString": "string memory" } ], - "id": 606, + "id": 562, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "6746:5:0", + "src": "5784:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 608, + "id": 564, "isConstant": false, "isLValue": false, "isPure": false, @@ -25747,13 +24491,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6746:14:0", + "src": "5784:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 609, + "id": 565, "isConstant": false, "isLValue": false, "isPure": false, @@ -25761,7 +24505,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "6746:21:0", + "src": "5784:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -25772,14 +24516,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 610, + "id": 566, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "6770:2:0", + "src": "5808:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -25787,37 +24531,37 @@ }, "value": "21" }, - "src": "6746:26:0", + "src": "5784:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 615, + "id": 571, "nodeType": "IfStatement", - "src": "6742:40:0", + "src": "5780:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 612, + "id": 568, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "6774:6:0", + "referencedDeclaration": 1505, + "src": "5812:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 613, + "id": 569, "isConstant": false, "isLValue": false, "isPure": false, @@ -25825,15 +24569,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6774:8:0", + "src": "5812:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 614, + "id": 570, "nodeType": "ExpressionStatement", - "src": "6774:8:0" + "src": "5812:8:0" } }, { @@ -25842,12 +24586,12 @@ "arguments": [ { "argumentTypes": null, - "id": 617, + "id": 573, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6809:3:0", + "referencedDeclaration": 534, + "src": "5847:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25859,26 +24603,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 618, + "id": 574, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6814:7:0", + "referencedDeclaration": 73, + "src": "5852:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 620, + "id": 576, "indexExpression": { "argumentTypes": null, - "id": 619, + "id": 575, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6822:3:0", + "referencedDeclaration": 534, + "src": "5860:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -25889,21 +24633,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6814:12:0", + "src": "5852:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 621, + "id": 577, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6814:23:0", + "referencedDeclaration": 86, + "src": "5852:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -25911,12 +24655,12 @@ }, { "argumentTypes": null, - "id": 622, + "id": 578, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6839:7:0", + "referencedDeclaration": 536, + "src": "5877:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -25938,18 +24682,18 @@ "typeString": "string memory" } ], - "id": 616, + "id": 572, "name": "ChangeMemberName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 286, - "src": "6792:16:0", + "referencedDeclaration": 242, + "src": "5830:16:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (address,string memory,string memory)" } }, - "id": 623, + "id": 579, "isConstant": false, "isLValue": false, "isPure": false, @@ -25957,20 +24701,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6792:55:0", + "src": "5830:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 624, + "id": 580, "nodeType": "ExpressionStatement", - "src": "6792:55:0" + "src": "5830:55:0" }, { "expression": { "argumentTypes": null, - "id": 630, + "id": 586, "isConstant": false, "isLValue": false, "isPure": false, @@ -25981,26 +24725,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 625, + "id": 581, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "6857:7:0", + "referencedDeclaration": 73, + "src": "5895:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 627, + "id": 583, "indexExpression": { "argumentTypes": null, - "id": 626, + "id": 582, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6865:3:0", + "referencedDeclaration": 534, + "src": "5903:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26011,21 +24755,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "6857:12:0", + "src": "5895:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 628, + "id": 584, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "memberName", "nodeType": "MemberAccess", - "referencedDeclaration": 87, - "src": "6857:23:0", + "referencedDeclaration": 86, + "src": "5895:23:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26035,31 +24779,31 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 629, + "id": 585, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 580, - "src": "6883:7:0", + "referencedDeclaration": 536, + "src": "5921:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "6857:33:0", + "src": "5895:33:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 631, + "id": 587, "nodeType": "ExpressionStatement", - "src": "6857:33:0" + "src": "5895:33:0" } ] }, "documentation": null, - "id": 633, + "id": 589, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -26068,49 +24812,49 @@ "arguments": [ { "argumentTypes": null, - "id": 583, + "id": 539, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 578, - "src": "6633:3:0", + "referencedDeclaration": 534, + "src": "5671:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 584, + "id": 540, "modifierName": { "argumentTypes": null, - "id": 582, + "id": 538, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "6620:12:0", + "referencedDeclaration": 305, + "src": "5658:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "6620:17:0" + "src": "5658:17:0" } ], "name": "changeMemberName", "nodeType": "FunctionDefinition", "parameters": { - "id": 581, + "id": 537, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 578, + "id": 534, "name": "who", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6584:11:0", + "scope": 589, + "src": "5622:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26118,10 +24862,10 @@ "typeString": "address" }, "typeName": { - "id": 577, + "id": 533, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6584:7:0", + "src": "5622:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26132,11 +24876,11 @@ }, { "constant": false, - "id": 580, + "id": 536, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 633, - "src": "6597:14:0", + "scope": 589, + "src": "5635:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26144,10 +24888,10 @@ "typeString": "string" }, "typeName": { - "id": 579, + "id": 535, "name": "string", "nodeType": "ElementaryTypeName", - "src": "6597:6:0", + "src": "5635:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -26157,26 +24901,26 @@ "visibility": "internal" } ], - "src": "6583:29:0" + "src": "5621:29:0" }, "payable": false, "returnParameters": { - "id": 585, + "id": 541, "nodeType": "ParameterList", "parameters": [], - "src": "6638:0:0" + "src": "5676:0:0" }, - "scope": 1194, - "src": "6558:339:0", + "scope": 1146, + "src": "5596:339:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 658, + "id": 614, "nodeType": "Block", - "src": "6980:107:0", + "src": "6018:107:0", "statements": [ { "expression": { @@ -26184,12 +24928,12 @@ "arguments": [ { "argumentTypes": null, - "id": 643, + "id": 599, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7006:3:0", + "referencedDeclaration": 591, + "src": "6044:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26201,26 +24945,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 644, + "id": 600, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7011:7:0", + "referencedDeclaration": 73, + "src": "6049:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 646, + "id": 602, "indexExpression": { "argumentTypes": null, - "id": 645, + "id": 601, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7019:3:0", + "referencedDeclaration": 591, + "src": "6057:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26231,21 +24975,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7011:12:0", + "src": "6049:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 647, + "id": 603, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7011:18:0", + "referencedDeclaration": 80, + "src": "6049:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26253,12 +24997,12 @@ }, { "argumentTypes": null, - "id": 648, + "id": 604, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7031:8:0", + "referencedDeclaration": 593, + "src": "6069:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26280,18 +25024,18 @@ "typeString": "bool" } ], - "id": 642, + "id": 598, "name": "ChangePrivilege", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 272, - "src": "6990:15:0", + "referencedDeclaration": 228, + "src": "6028:15:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_bool_$_t_bool_$returns$__$", "typeString": "function (address,bool,bool)" } }, - "id": 649, + "id": 605, "isConstant": false, "isLValue": false, "isPure": false, @@ -26299,20 +25043,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "6990:50:0", + "src": "6028:50:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 650, + "id": 606, "nodeType": "ExpressionStatement", - "src": "6990:50:0" + "src": "6028:50:0" }, { "expression": { "argumentTypes": null, - "id": 656, + "id": 612, "isConstant": false, "isLValue": false, "isPure": false, @@ -26323,26 +25067,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 651, + "id": 607, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "7050:7:0", + "referencedDeclaration": 73, + "src": "6088:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 653, + "id": 609, "indexExpression": { "argumentTypes": null, - "id": 652, + "id": 608, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 635, - "src": "7058:3:0", + "referencedDeclaration": 591, + "src": "6096:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26353,21 +25097,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "7050:12:0", + "src": "6088:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 654, + "id": 610, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "admin", "nodeType": "MemberAccess", - "referencedDeclaration": 81, - "src": "7050:18:0", + "referencedDeclaration": 80, + "src": "6088:18:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26377,68 +25121,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 655, + "id": 611, "name": "newValue", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 637, - "src": "7071:8:0", + "referencedDeclaration": 593, + "src": "6109:8:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "7050:29:0", + "src": "6088:29:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 657, + "id": 613, "nodeType": "ExpressionStatement", - "src": "7050:29:0" + "src": "6088:29:0" } ] }, "documentation": null, - "id": 659, + "id": 615, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 640, + "id": 596, "modifierName": { "argumentTypes": null, - "id": 639, + "id": 595, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "6968:9:0", + "referencedDeclaration": 290, + "src": "6006:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "6968:11:0" + "src": "6006:11:0" } ], "name": "changeAdminPrivilege", "nodeType": "FunctionDefinition", "parameters": { - "id": 638, + "id": 594, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 635, + "id": 591, "name": "who", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6933:11:0", + "scope": 615, + "src": "5971:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26446,10 +25190,10 @@ "typeString": "address" }, "typeName": { - "id": 634, + "id": 590, "name": "address", "nodeType": "ElementaryTypeName", - "src": "6933:7:0", + "src": "5971:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -26460,11 +25204,11 @@ }, { "constant": false, - "id": 637, + "id": 593, "name": "newValue", "nodeType": "VariableDeclaration", - "scope": 659, - "src": "6946:13:0", + "scope": 615, + "src": "5984:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26472,10 +25216,10 @@ "typeString": "bool" }, "typeName": { - "id": 636, + "id": 592, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "6946:4:0", + "src": "5984:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -26485,26 +25229,26 @@ "visibility": "internal" } ], - "src": "6932:28:0" + "src": "5970:28:0" }, "payable": false, "returnParameters": { - "id": 641, + "id": 597, "nodeType": "ParameterList", "parameters": [], - "src": "6980:0:0" + "src": "6018:0:0" }, - "scope": 1194, - "src": "6903:184:0", + "scope": 1146, + "src": "5941:184:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 685, + "id": 641, "nodeType": "Block", - "src": "7215:124:0", + "src": "6253:124:0", "statements": [ { "condition": { @@ -26513,7 +25257,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 671, + "id": 627, "isConstant": false, "isLValue": false, "isPure": false, @@ -26525,12 +25269,12 @@ "arguments": [ { "argumentTypes": null, - "id": 667, + "id": 623, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7235:7:0", + "referencedDeclaration": 617, + "src": "6273:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26544,20 +25288,20 @@ "typeString": "string memory" } ], - "id": 666, + "id": 622, "isConstant": false, "isLValue": false, "isPure": true, "lValueRequested": false, "nodeType": "ElementaryTypeNameExpression", - "src": "7229:5:0", + "src": "6267:5:0", "typeDescriptions": { "typeIdentifier": "t_type$_t_bytes_storage_ptr_$", "typeString": "type(bytes storage pointer)" }, "typeName": "bytes" }, - "id": 668, + "id": 624, "isConstant": false, "isLValue": false, "isPure": false, @@ -26565,13 +25309,13 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7229:14:0", + "src": "6267:14:0", "typeDescriptions": { "typeIdentifier": "t_bytes_memory", "typeString": "bytes memory" } }, - "id": 669, + "id": 625, "isConstant": false, "isLValue": false, "isPure": false, @@ -26579,7 +25323,7 @@ "memberName": "length", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7229:21:0", + "src": "6267:21:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26590,14 +25334,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3231", - "id": 670, + "id": 626, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "7253:2:0", + "src": "6291:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_21_by_1", @@ -26605,37 +25349,37 @@ }, "value": "21" }, - "src": "7229:26:0", + "src": "6267:26:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 675, + "id": 631, "nodeType": "IfStatement", - "src": "7225:40:0", + "src": "6263:40:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 672, + "id": 628, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7257:6:0", + "referencedDeclaration": 1505, + "src": "6295:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 673, + "id": 629, "isConstant": false, "isLValue": false, "isPure": false, @@ -26643,15 +25387,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7257:8:0", + "src": "6295:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 674, + "id": 630, "nodeType": "ExpressionStatement", - "src": "7257:8:0" + "src": "6295:8:0" } }, { @@ -26660,12 +25404,12 @@ "arguments": [ { "argumentTypes": null, - "id": 677, + "id": 633, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7294:4:0", + "referencedDeclaration": 56, + "src": "6332:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26673,12 +25417,12 @@ }, { "argumentTypes": null, - "id": 678, + "id": 634, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7300:7:0", + "referencedDeclaration": 617, + "src": "6338:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" @@ -26696,18 +25440,18 @@ "typeString": "string memory" } ], - "id": 676, + "id": 632, "name": "ChangeContractName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 278, - "src": "7275:18:0", + "referencedDeclaration": 234, + "src": "6313:18:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_string_memory_ptr_$_t_string_memory_ptr_$returns$__$", "typeString": "function (string memory,string memory)" } }, - "id": 679, + "id": 635, "isConstant": false, "isLValue": false, "isPure": false, @@ -26715,32 +25459,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7275:33:0", + "src": "6313:33:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 680, + "id": 636, "nodeType": "ExpressionStatement", - "src": "7275:33:0" + "src": "6313:33:0" }, { "expression": { "argumentTypes": null, - "id": 683, + "id": 639, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 681, + "id": 637, "name": "name", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 57, - "src": "7318:4:0", + "referencedDeclaration": 56, + "src": "6356:4:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" @@ -26750,68 +25494,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 682, + "id": 638, "name": "newName", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 661, - "src": "7325:7:0", + "referencedDeclaration": 617, + "src": "6363:7:0", "typeDescriptions": { "typeIdentifier": "t_string_memory_ptr", "typeString": "string memory" } }, - "src": "7318:14:0", + "src": "6356:14:0", "typeDescriptions": { "typeIdentifier": "t_string_storage", "typeString": "string storage ref" } }, - "id": 684, + "id": 640, "nodeType": "ExpressionStatement", - "src": "7318:14:0" + "src": "6356:14:0" } ] }, "documentation": null, - "id": 686, + "id": 642, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 664, + "id": 620, "modifierName": { "argumentTypes": null, - "id": 663, + "id": 619, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "7203:9:0", + "referencedDeclaration": 290, + "src": "6241:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7203:11:0" + "src": "6241:11:0" } ], "name": "changeContractName", "nodeType": "FunctionDefinition", "parameters": { - "id": 662, + "id": 618, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 661, + "id": 617, "name": "newName", "nodeType": "VariableDeclaration", - "scope": 686, - "src": "7180:14:0", + "scope": 642, + "src": "6218:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -26819,10 +25563,10 @@ "typeString": "string" }, "typeName": { - "id": 660, + "id": 616, "name": "string", "nodeType": "ElementaryTypeName", - "src": "7180:6:0", + "src": "6218:6:0", "typeDescriptions": { "typeIdentifier": "t_string_storage_ptr", "typeString": "string" @@ -26832,26 +25576,26 @@ "visibility": "internal" } ], - "src": "7179:16:0" + "src": "6217:16:0" }, "payable": false, "returnParameters": { - "id": 665, + "id": 621, "nodeType": "ParameterList", "parameters": [], - "src": "7215:0:0" + "src": "6253:0:0" }, - "scope": 1194, - "src": "7152:187:0", + "scope": 1146, + "src": "6190:187:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 722, + "id": 678, "nodeType": "Block", - "src": "7653:262:0", + "src": "6691:262:0", "statements": [ { "condition": { @@ -26860,19 +25604,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 695, + "id": 651, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 693, + "id": 649, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7667:13:0", + "referencedDeclaration": 644, + "src": "6705:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26882,48 +25626,48 @@ "operator": "<", "rightExpression": { "argumentTypes": null, - "id": 694, + "id": 650, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7683:22:0", + "referencedDeclaration": 69, + "src": "6721:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7667:38:0", + "src": "6705:38:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 699, + "id": 655, "nodeType": "IfStatement", - "src": "7663:52:0", + "src": "6701:52:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 696, + "id": 652, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7707:6:0", + "referencedDeclaration": 1505, + "src": "6745:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 697, + "id": 653, "isConstant": false, "isLValue": false, "isPure": false, @@ -26931,15 +25675,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7707:8:0", + "src": "6745:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 698, + "id": 654, "nodeType": "ExpressionStatement", - "src": "7707:8:0" + "src": "6745:8:0" } }, { @@ -26949,7 +25693,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 706, + "id": 662, "isConstant": false, "isLValue": false, "isPure": false, @@ -26959,12 +25703,12 @@ "arguments": [ { "argumentTypes": null, - "id": 702, + "id": 658, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "7747:22:0", + "referencedDeclaration": 69, + "src": "6785:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -26980,32 +25724,32 @@ ], "expression": { "argumentTypes": null, - "id": 700, + "id": 656, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7729:13:0", + "referencedDeclaration": 644, + "src": "6767:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 701, + "id": 657, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "7729:17:0", + "referencedDeclaration": 1281, + "src": "6767:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 703, + "id": 659, "isConstant": false, "isLValue": false, "isPure": false, @@ -27013,7 +25757,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7729:41:0", + "src": "6767:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27025,18 +25769,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 704, + "id": 660, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7773:4:0", + "referencedDeclaration": 1513, + "src": "6811:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 705, + "id": 661, "isConstant": false, "isLValue": false, "isPure": false, @@ -27044,43 +25788,43 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7773:12:0", + "src": "6811:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7729:56:0", + "src": "6767:56:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 710, + "id": 666, "nodeType": "IfStatement", - "src": "7725:70:0", + "src": "6763:70:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 707, + "id": 663, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "7787:6:0", + "referencedDeclaration": 1505, + "src": "6825:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 708, + "id": 664, "isConstant": false, "isLValue": false, "isPure": false, @@ -27088,15 +25832,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7787:8:0", + "src": "6825:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 709, + "id": 665, "nodeType": "ExpressionStatement", - "src": "7787:8:0" + "src": "6825:8:0" } }, { @@ -27107,18 +25851,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 712, + "id": 668, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "7826:4:0", + "referencedDeclaration": 1513, + "src": "6864:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 713, + "id": 669, "isConstant": false, "isLValue": false, "isPure": false, @@ -27126,7 +25870,7 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "7826:12:0", + "src": "6864:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27134,12 +25878,12 @@ }, { "argumentTypes": null, - "id": 714, + "id": 670, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7840:13:0", + "referencedDeclaration": 67, + "src": "6878:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27147,12 +25891,12 @@ }, { "argumentTypes": null, - "id": 715, + "id": 671, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7855:13:0", + "referencedDeclaration": 644, + "src": "6893:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27174,18 +25918,18 @@ "typeString": "uint256" } ], - "id": 711, + "id": 667, "name": "ChangeSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 294, - "src": "7806:19:0", + "referencedDeclaration": 250, + "src": "6844:19:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_uint256_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (uint256,uint256,uint256)" } }, - "id": 716, + "id": 672, "isConstant": false, "isLValue": false, "isPure": false, @@ -27193,32 +25937,32 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "7806:63:0", + "src": "6844:63:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 717, + "id": 673, "nodeType": "ExpressionStatement", - "src": "7806:63:0" + "src": "6844:63:0" }, { "expression": { "argumentTypes": null, - "id": 720, + "id": 676, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 718, + "id": 674, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "7879:13:0", + "referencedDeclaration": 67, + "src": "6917:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27228,68 +25972,68 @@ "operator": "=", "rightHandSide": { "argumentTypes": null, - "id": 719, + "id": 675, "name": "newAllocation", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 688, - "src": "7895:13:0", + "referencedDeclaration": 644, + "src": "6933:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "7879:29:0", + "src": "6917:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 721, + "id": 677, "nodeType": "ExpressionStatement", - "src": "7879:29:0" + "src": "6917:29:0" } ] }, "documentation": null, - "id": 723, + "id": 679, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 691, + "id": 647, "modifierName": { "argumentTypes": null, - "id": 690, + "id": 646, "name": "onlyOwner", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 28, - "src": "7641:9:0", + "referencedDeclaration": 30, + "src": "6679:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "7641:11:0" + "src": "6679:11:0" } ], "name": "changeSharedExpenseAllocation", "nodeType": "FunctionDefinition", "parameters": { - "id": 689, + "id": 645, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 688, + "id": 644, "name": "newAllocation", "nodeType": "VariableDeclaration", - "scope": 723, - "src": "7611:21:0", + "scope": 679, + "src": "6649:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27297,10 +26041,10 @@ "typeString": "uint256" }, "typeName": { - "id": 687, + "id": 643, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "7611:7:0", + "src": "6649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27310,39 +26054,39 @@ "visibility": "internal" } ], - "src": "7610:23:0" + "src": "6648:23:0" }, "payable": false, "returnParameters": { - "id": 692, + "id": 648, "nodeType": "ParameterList", "parameters": [], - "src": "7653:0:0" + "src": "6691:0:0" }, - "scope": 1194, - "src": "7572:343:0", + "scope": 1146, + "src": "6610:343:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 771, + "id": 727, "nodeType": "Block", - "src": "8108:283:0", + "src": "7146:283:0", "statements": [ { "assignments": [ - 736 + 692 ], "declarations": [ { "constant": false, - "id": 736, + "id": 692, "name": "currentShares", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8118:21:0", + "scope": 728, + "src": "7156:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27350,10 +26094,10 @@ "typeString": "uint256" }, "typeName": { - "id": 735, + "id": 691, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8118:7:0", + "src": "7156:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27363,33 +26107,33 @@ "visibility": "internal" } ], - "id": 741, + "id": 697, "initialValue": { "argumentTypes": null, "expression": { "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 737, + "id": 693, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8142:7:0", + "referencedDeclaration": 73, + "src": "7180:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 739, + "id": 695, "indexExpression": { "argumentTypes": null, - "id": 738, + "id": 694, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8150:3:0", + "referencedDeclaration": 681, + "src": "7188:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27400,28 +26144,28 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8142:12:0", + "src": "7180:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 740, + "id": 696, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8142:19:0", + "referencedDeclaration": 82, + "src": "7180:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "8118:43:0" + "src": "7156:43:0" }, { "condition": { @@ -27430,19 +26174,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 744, + "id": 700, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 742, + "id": 698, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8175:6:0", + "referencedDeclaration": 683, + "src": "7213:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27452,48 +26196,48 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 743, + "id": 699, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8185:13:0", + "referencedDeclaration": 692, + "src": "7223:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8175:23:0", + "src": "7213:23:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 748, + "id": 704, "nodeType": "IfStatement", - "src": "8171:37:0", + "src": "7209:37:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 745, + "id": 701, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "8200:6:0", + "referencedDeclaration": 1505, + "src": "7238:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 746, + "id": 702, "isConstant": false, "isLValue": false, "isPure": false, @@ -27501,15 +26245,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8200:8:0", + "src": "7238:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 747, + "id": 703, "nodeType": "ExpressionStatement", - "src": "8200:8:0" + "src": "7238:8:0" } }, { @@ -27519,19 +26263,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 751, + "id": 707, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 749, + "id": 705, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8222:6:0", + "referencedDeclaration": 683, + "src": "7260:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27541,27 +26285,27 @@ "operator": ">", "rightExpression": { "argumentTypes": null, - "id": 750, + "id": 706, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8231:13:0", + "referencedDeclaration": 692, + "src": "7269:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8222:22:0", + "src": "7260:22:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": { - "id": 769, + "id": 725, "nodeType": "Block", - "src": "8317:68:0", + "src": "7355:68:0", "statements": [ { "expression": { @@ -27569,12 +26313,12 @@ "arguments": [ { "argumentTypes": null, - "id": 762, + "id": 718, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8343:3:0", + "referencedDeclaration": 681, + "src": "7381:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27585,12 +26329,12 @@ "arguments": [ { "argumentTypes": null, - "id": 765, + "id": 721, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8366:6:0", + "referencedDeclaration": 683, + "src": "7404:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27606,32 +26350,32 @@ ], "expression": { "argumentTypes": null, - "id": 763, + "id": 719, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8348:13:0", + "referencedDeclaration": 692, + "src": "7386:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 764, + "id": 720, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8348:17:0", + "referencedDeclaration": 1281, + "src": "7386:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 766, + "id": 722, "isConstant": false, "isLValue": false, "isPure": false, @@ -27639,7 +26383,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8348:25:0", + "src": "7386:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27657,18 +26401,18 @@ "typeString": "uint256" } ], - "id": 761, + "id": 717, "name": "removeShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 856, - "src": "8331:11:0", + "referencedDeclaration": 812, + "src": "7369:11:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 767, + "id": 723, "isConstant": false, "isLValue": false, "isPure": false, @@ -27676,25 +26420,25 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8331:43:0", + "src": "7369:43:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 768, + "id": 724, "nodeType": "ExpressionStatement", - "src": "8331:43:0" + "src": "7369:43:0" } ] }, - "id": 770, + "id": 726, "nodeType": "IfStatement", - "src": "8218:167:0", + "src": "7256:167:0", "trueBody": { - "id": 760, + "id": 716, "nodeType": "Block", - "src": "8246:65:0", + "src": "7284:65:0", "statements": [ { "expression": { @@ -27702,12 +26446,12 @@ "arguments": [ { "argumentTypes": null, - "id": 753, + "id": 709, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8269:3:0", + "referencedDeclaration": 681, + "src": "7307:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27718,12 +26462,12 @@ "arguments": [ { "argumentTypes": null, - "id": 756, + "id": 712, "name": "currentShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 736, - "src": "8285:13:0", + "referencedDeclaration": 692, + "src": "7323:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27739,32 +26483,32 @@ ], "expression": { "argumentTypes": null, - "id": 754, + "id": 710, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 727, - "src": "8274:6:0", + "referencedDeclaration": 683, + "src": "7312:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 755, + "id": 711, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8274:10:0", + "referencedDeclaration": 1281, + "src": "7312:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 757, + "id": 713, "isConstant": false, "isLValue": false, "isPure": false, @@ -27772,7 +26516,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8274:25:0", + "src": "7312:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27790,18 +26534,18 @@ "typeString": "uint256" } ], - "id": 752, + "id": 708, "name": "addShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 814, - "src": "8260:8:0", + "referencedDeclaration": 770, + "src": "7298:8:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_nonpayable$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256)" } }, - "id": 758, + "id": 714, "isConstant": false, "isLValue": false, "isPure": false, @@ -27809,15 +26553,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8260:40:0", + "src": "7298:40:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 759, + "id": 715, "nodeType": "ExpressionStatement", - "src": "8260:40:0" + "src": "7298:40:0" } ] } @@ -27825,77 +26569,77 @@ ] }, "documentation": null, - "id": 772, + "id": 728, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 730, + "id": 686, "modifierName": { "argumentTypes": null, - "id": 729, + "id": 685, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8078:9:0", + "referencedDeclaration": 290, + "src": "7116:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8078:11:0" + "src": "7116:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 732, + "id": 688, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 725, - "src": "8103:3:0", + "referencedDeclaration": 681, + "src": "7141:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 733, + "id": 689, "modifierName": { "argumentTypes": null, - "id": 731, + "id": 687, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8090:12:0", + "referencedDeclaration": 305, + "src": "7128:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8090:17:0" + "src": "7128:17:0" } ], "name": "allocateShares", "nodeType": "FunctionDefinition", "parameters": { - "id": 728, + "id": 684, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 725, + "id": 681, "name": "who", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8042:11:0", + "scope": 728, + "src": "7080:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27903,10 +26647,10 @@ "typeString": "address" }, "typeName": { - "id": 724, + "id": 680, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8042:7:0", + "src": "7080:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -27917,11 +26661,11 @@ }, { "constant": false, - "id": 727, + "id": 683, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 772, - "src": "8055:14:0", + "scope": 728, + "src": "7093:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -27929,10 +26673,10 @@ "typeString": "uint256" }, "typeName": { - "id": 726, + "id": 682, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8055:7:0", + "src": "7093:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27942,43 +26686,43 @@ "visibility": "internal" } ], - "src": "8041:29:0" + "src": "7079:29:0" }, "payable": false, "returnParameters": { - "id": 734, + "id": 690, "nodeType": "ParameterList", "parameters": [], - "src": "8108:0:0" + "src": "7146:0:0" }, - "scope": 1194, - "src": "8018:373:0", + "scope": 1146, + "src": "7056:373:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 813, + "id": 769, "nodeType": "Block", - "src": "8532:169:0", + "src": "7570:169:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 789, + "id": 745, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 784, + "id": 740, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8542:11:0", + "referencedDeclaration": 58, + "src": "7580:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -27991,12 +26735,12 @@ "arguments": [ { "argumentTypes": null, - "id": 787, + "id": 743, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8572:6:0", + "referencedDeclaration": 732, + "src": "7610:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28012,32 +26756,32 @@ ], "expression": { "argumentTypes": null, - "id": 785, + "id": 741, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8556:11:0", + "referencedDeclaration": 58, + "src": "7594:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 786, + "id": 742, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8556:15:0", + "referencedDeclaration": 1305, + "src": "7594:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 788, + "id": 744, "isConstant": false, "isLValue": false, "isPure": false, @@ -28045,26 +26789,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8556:23:0", + "src": "7594:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8542:37:0", + "src": "7580:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 790, + "id": 746, "nodeType": "ExpressionStatement", - "src": "8542:37:0" + "src": "7580:37:0" }, { "expression": { "argumentTypes": null, - "id": 802, + "id": 758, "isConstant": false, "isLValue": false, "isPure": false, @@ -28075,26 +26819,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 791, + "id": 747, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8589:7:0", + "referencedDeclaration": 73, + "src": "7627:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 793, + "id": 749, "indexExpression": { "argumentTypes": null, - "id": 792, + "id": 748, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8597:3:0", + "referencedDeclaration": 730, + "src": "7635:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28105,21 +26849,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8589:12:0", + "src": "7627:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 794, + "id": 750, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8589:19:0", + "referencedDeclaration": 82, + "src": "7627:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28132,12 +26876,12 @@ "arguments": [ { "argumentTypes": null, - "id": 800, + "id": 756, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8635:6:0", + "referencedDeclaration": 732, + "src": "7673:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28157,26 +26901,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 795, + "id": 751, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8611:7:0", + "referencedDeclaration": 73, + "src": "7649:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 797, + "id": 753, "indexExpression": { "argumentTypes": null, - "id": 796, + "id": 752, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8619:3:0", + "referencedDeclaration": 730, + "src": "7657:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28187,41 +26931,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8611:12:0", + "src": "7649:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 798, + "id": 754, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8611:19:0", + "referencedDeclaration": 82, + "src": "7649:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 799, + "id": 755, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "8611:23:0", + "referencedDeclaration": 1305, + "src": "7649:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 801, + "id": 757, "isConstant": false, "isLValue": false, "isPure": false, @@ -28229,21 +26973,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8611:31:0", + "src": "7649:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8589:53:0", + "src": "7627:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 803, + "id": 759, "nodeType": "ExpressionStatement", - "src": "8589:53:0" + "src": "7627:53:0" }, { "expression": { @@ -28251,12 +26995,12 @@ "arguments": [ { "argumentTypes": null, - "id": 805, + "id": 761, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8661:3:0", + "referencedDeclaration": 730, + "src": "7699:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28264,12 +27008,12 @@ }, { "argumentTypes": null, - "id": 806, + "id": 762, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 776, - "src": "8666:6:0", + "referencedDeclaration": 732, + "src": "7704:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28281,26 +27025,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 807, + "id": 763, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8674:7:0", + "referencedDeclaration": 73, + "src": "7712:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 809, + "id": 765, "indexExpression": { "argumentTypes": null, - "id": 808, + "id": 764, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8682:3:0", + "referencedDeclaration": 730, + "src": "7720:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28311,21 +27055,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8674:12:0", + "src": "7712:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 810, + "id": 766, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8674:19:0", + "referencedDeclaration": 82, + "src": "7712:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28347,18 +27091,18 @@ "typeString": "uint256" } ], - "id": 804, + "id": 760, "name": "AddShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 256, - "src": "8652:8:0", + "referencedDeclaration": 212, + "src": "7690:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 811, + "id": 767, "isConstant": false, "isLValue": false, "isPure": false, @@ -28366,90 +27110,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8652:42:0", + "src": "7690:42:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 812, + "id": 768, "nodeType": "ExpressionStatement", - "src": "8652:42:0" + "src": "7690:42:0" } ] }, "documentation": null, - "id": 814, + "id": 770, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 779, + "id": 735, "modifierName": { "argumentTypes": null, - "id": 778, + "id": 734, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8502:9:0", + "referencedDeclaration": 290, + "src": "7540:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8502:11:0" + "src": "7540:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 781, + "id": 737, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 774, - "src": "8527:3:0", + "referencedDeclaration": 730, + "src": "7565:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 782, + "id": 738, "modifierName": { "argumentTypes": null, - "id": 780, + "id": 736, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8514:12:0", + "referencedDeclaration": 305, + "src": "7552:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8514:17:0" + "src": "7552:17:0" } ], "name": "addShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 777, + "id": 733, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 774, + "id": 730, "name": "who", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8466:11:0", + "scope": 770, + "src": "7504:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28457,10 +27201,10 @@ "typeString": "address" }, "typeName": { - "id": 773, + "id": 729, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8466:7:0", + "src": "7504:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28471,11 +27215,11 @@ }, { "constant": false, - "id": 776, + "id": 732, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 814, - "src": "8479:14:0", + "scope": 770, + "src": "7517:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -28483,10 +27227,10 @@ "typeString": "uint256" }, "typeName": { - "id": 775, + "id": 731, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8479:7:0", + "src": "7517:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28496,43 +27240,43 @@ "visibility": "internal" } ], - "src": "8465:29:0" + "src": "7503:29:0" }, "payable": false, "returnParameters": { - "id": 783, + "id": 739, "nodeType": "ParameterList", "parameters": [], - "src": "8532:0:0" + "src": "7570:0:0" }, - "scope": 1194, - "src": "8448:253:0", + "scope": 1146, + "src": "7486:253:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 855, + "id": 811, "nodeType": "Block", - "src": "8845:172:0", + "src": "7883:172:0", "statements": [ { "expression": { "argumentTypes": null, - "id": 831, + "id": 787, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 826, + "id": 782, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8855:11:0", + "referencedDeclaration": 58, + "src": "7893:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28545,12 +27289,12 @@ "arguments": [ { "argumentTypes": null, - "id": 829, + "id": 785, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8885:6:0", + "referencedDeclaration": 774, + "src": "7923:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28566,32 +27310,32 @@ ], "expression": { "argumentTypes": null, - "id": 827, + "id": 783, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "8869:11:0", + "referencedDeclaration": 58, + "src": "7907:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 828, + "id": 784, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8869:15:0", + "referencedDeclaration": 1281, + "src": "7907:15:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 830, + "id": 786, "isConstant": false, "isLValue": false, "isPure": false, @@ -28599,26 +27343,26 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8869:23:0", + "src": "7907:23:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8855:37:0", + "src": "7893:37:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 832, + "id": 788, "nodeType": "ExpressionStatement", - "src": "8855:37:0" + "src": "7893:37:0" }, { "expression": { "argumentTypes": null, - "id": 844, + "id": 800, "isConstant": false, "isLValue": false, "isPure": false, @@ -28629,26 +27373,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 833, + "id": 789, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8902:7:0", + "referencedDeclaration": 73, + "src": "7940:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 835, + "id": 791, "indexExpression": { "argumentTypes": null, - "id": 834, + "id": 790, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8910:3:0", + "referencedDeclaration": 772, + "src": "7948:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28659,21 +27403,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8902:12:0", + "src": "7940:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 836, + "id": 792, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8902:19:0", + "referencedDeclaration": 82, + "src": "7940:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28686,12 +27430,12 @@ "arguments": [ { "argumentTypes": null, - "id": 842, + "id": 798, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8948:6:0", + "referencedDeclaration": 774, + "src": "7986:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28711,26 +27455,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 837, + "id": 793, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8924:7:0", + "referencedDeclaration": 73, + "src": "7962:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 839, + "id": 795, "indexExpression": { "argumentTypes": null, - "id": 838, + "id": 794, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8932:3:0", + "referencedDeclaration": 772, + "src": "7970:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28741,41 +27485,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8924:12:0", + "src": "7962:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 840, + "id": 796, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8924:19:0", + "referencedDeclaration": 82, + "src": "7962:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 841, + "id": 797, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "8924:23:0", + "referencedDeclaration": 1281, + "src": "7962:23:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 843, + "id": 799, "isConstant": false, "isLValue": false, "isPure": false, @@ -28783,21 +27527,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8924:31:0", + "src": "7962:31:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "8902:53:0", + "src": "7940:53:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 845, + "id": 801, "nodeType": "ExpressionStatement", - "src": "8902:53:0" + "src": "7940:53:0" }, { "expression": { @@ -28805,12 +27549,12 @@ "arguments": [ { "argumentTypes": null, - "id": 847, + "id": 803, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8977:3:0", + "referencedDeclaration": 772, + "src": "8015:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28818,12 +27562,12 @@ }, { "argumentTypes": null, - "id": 848, + "id": 804, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 818, - "src": "8982:6:0", + "referencedDeclaration": 774, + "src": "8020:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28835,26 +27579,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 849, + "id": 805, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "8990:7:0", + "referencedDeclaration": 73, + "src": "8028:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 851, + "id": 807, "indexExpression": { "argumentTypes": null, - "id": 850, + "id": 806, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8998:3:0", + "referencedDeclaration": 772, + "src": "8036:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -28865,21 +27609,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "8990:12:0", + "src": "8028:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 852, + "id": 808, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "8990:19:0", + "referencedDeclaration": 82, + "src": "8028:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -28901,18 +27645,18 @@ "typeString": "uint256" } ], - "id": 846, + "id": 802, "name": "RemoveShare", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 264, - "src": "8965:11:0", + "referencedDeclaration": 220, + "src": "8003:11:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 853, + "id": 809, "isConstant": false, "isLValue": false, "isPure": false, @@ -28920,90 +27664,90 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "8965:45:0", + "src": "8003:45:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 854, + "id": 810, "nodeType": "ExpressionStatement", - "src": "8965:45:0" + "src": "8003:45:0" } ] }, "documentation": null, - "id": 856, + "id": 812, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 821, + "id": 777, "modifierName": { "argumentTypes": null, - "id": 820, + "id": 776, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "8815:9:0", + "referencedDeclaration": 290, + "src": "7853:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "8815:11:0" + "src": "7853:11:0" }, { "arguments": [ { "argumentTypes": null, - "id": 823, + "id": 779, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 816, - "src": "8840:3:0", + "referencedDeclaration": 772, + "src": "7878:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 824, + "id": 780, "modifierName": { "argumentTypes": null, - "id": 822, + "id": 778, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "8827:12:0", + "referencedDeclaration": 305, + "src": "7865:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "8827:17:0" + "src": "7865:17:0" } ], "name": "removeShare", "nodeType": "FunctionDefinition", "parameters": { - "id": 819, + "id": 775, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 816, + "id": 772, "name": "who", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8779:11:0", + "scope": 812, + "src": "7817:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29011,10 +27755,10 @@ "typeString": "address" }, "typeName": { - "id": 815, + "id": 771, "name": "address", "nodeType": "ElementaryTypeName", - "src": "8779:7:0", + "src": "7817:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29025,11 +27769,11 @@ }, { "constant": false, - "id": 818, + "id": 774, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 856, - "src": "8792:14:0", + "scope": 812, + "src": "7830:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29037,10 +27781,10 @@ "typeString": "uint256" }, "typeName": { - "id": 817, + "id": 773, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "8792:7:0", + "src": "7830:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29050,39 +27794,39 @@ "visibility": "internal" } ], - "src": "8778:29:0" + "src": "7816:29:0" }, "payable": false, "returnParameters": { - "id": 825, + "id": 781, "nodeType": "ParameterList", "parameters": [], - "src": "8845:0:0" + "src": "7883:0:0" }, - "scope": 1194, - "src": "8758:259:0", + "scope": 1146, + "src": "7796:259:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 923, + "id": 879, "nodeType": "Block", - "src": "9430:392:0", + "src": "8468:392:0", "statements": [ { "assignments": [ - 866 + 822 ], "declarations": [ { "constant": false, - "id": 866, + "id": 822, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9440:16:0", + "scope": 880, + "src": "8478:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29090,10 +27834,10 @@ "typeString": "uint256" }, "typeName": { - "id": 865, + "id": 821, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9440:7:0", + "src": "8478:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29103,7 +27847,7 @@ "visibility": "internal" } ], - "id": 871, + "id": 827, "initialValue": { "argumentTypes": null, "arguments": [ @@ -29111,18 +27855,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 868, + "id": 824, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9492:3:0", + "referencedDeclaration": 1500, + "src": "8530:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 869, + "id": 825, "isConstant": false, "isLValue": false, "isPure": false, @@ -29130,7 +27874,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9492:10:0", + "src": "8530:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29144,18 +27888,18 @@ "typeString": "address" } ], - "id": 867, + "id": 823, "name": "calculateTotalWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1113, - "src": "9459:32:0", + "referencedDeclaration": 1066, + "src": "8497:32:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 870, + "id": 826, "isConstant": false, "isLValue": false, "isPure": false, @@ -29163,14 +27907,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9459:44:0", + "src": "8497:44:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9440:63:0" + "src": "8478:63:0" }, { "condition": { @@ -29179,19 +27923,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 881, + "id": 837, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 872, + "id": 828, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9517:6:0", + "referencedDeclaration": 814, + "src": "8555:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29208,34 +27952,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 875, + "id": 831, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9539:7:0", + "referencedDeclaration": 73, + "src": "8577:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 878, + "id": 834, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 876, + "id": 832, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9547:3:0", + "referencedDeclaration": 1500, + "src": "8585:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 877, + "id": 833, "isConstant": false, "isLValue": false, "isPure": false, @@ -29243,7 +27987,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9547:10:0", + "src": "8585:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29254,21 +27998,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9539:19:0", + "src": "8577:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 879, + "id": 835, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9539:29:0", + "referencedDeclaration": 84, + "src": "8577:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29284,32 +28028,32 @@ ], "expression": { "argumentTypes": null, - "id": 873, + "id": 829, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 866, - "src": "9526:8:0", + "referencedDeclaration": 822, + "src": "8564:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 874, + "id": 830, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "9526:12:0", + "referencedDeclaration": 1281, + "src": "8564:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 880, + "id": 836, "isConstant": false, "isLValue": false, "isPure": false, @@ -29317,43 +28061,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9526:43:0", + "src": "8564:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9517:52:0", + "src": "8555:52:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 885, + "id": 841, "nodeType": "IfStatement", - "src": "9513:66:0", + "src": "8551:66:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 882, + "id": 838, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "9571:6:0", + "referencedDeclaration": 1505, + "src": "8609:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 883, + "id": 839, "isConstant": false, "isLValue": false, "isPure": false, @@ -29361,21 +28105,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9571:8:0", + "src": "8609:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 884, + "id": 840, "nodeType": "ExpressionStatement", - "src": "9571:8:0" + "src": "8609:8:0" } }, { "expression": { "argumentTypes": null, - "id": 899, + "id": 855, "isConstant": false, "isLValue": false, "isPure": false, @@ -29386,34 +28130,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 886, + "id": 842, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9598:7:0", + "referencedDeclaration": 73, + "src": "8636:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 889, + "id": 845, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 887, + "id": 843, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9606:3:0", + "referencedDeclaration": 1500, + "src": "8644:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 888, + "id": 844, "isConstant": false, "isLValue": false, "isPure": false, @@ -29421,7 +28165,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9606:10:0", + "src": "8644:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29432,21 +28176,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9598:19:0", + "src": "8636:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 890, + "id": 846, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9598:29:0", + "referencedDeclaration": 84, + "src": "8636:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29459,12 +28203,12 @@ "arguments": [ { "argumentTypes": null, - "id": 897, + "id": 853, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9664:6:0", + "referencedDeclaration": 814, + "src": "8702:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29484,34 +28228,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 891, + "id": 847, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "9630:7:0", + "referencedDeclaration": 73, + "src": "8668:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 894, + "id": 850, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 892, + "id": 848, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9638:3:0", + "referencedDeclaration": 1500, + "src": "8676:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 893, + "id": 849, "isConstant": false, "isLValue": false, "isPure": false, @@ -29519,7 +28263,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9638:10:0", + "src": "8676:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29530,41 +28274,41 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "9630:19:0", + "src": "8668:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 895, + "id": 851, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "withdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 85, - "src": "9630:29:0", + "referencedDeclaration": 84, + "src": "8668:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 896, + "id": 852, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9630:33:0", + "referencedDeclaration": 1305, + "src": "8668:33:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 898, + "id": 854, "isConstant": false, "isLValue": false, "isPure": false, @@ -29572,38 +28316,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9630:41:0", + "src": "8668:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9598:73:0", + "src": "8636:73:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 900, + "id": 856, "nodeType": "ExpressionStatement", - "src": "9598:73:0" + "src": "8636:73:0" }, { "expression": { "argumentTypes": null, - "id": 906, + "id": 862, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 901, + "id": 857, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9681:14:0", + "referencedDeclaration": 60, + "src": "8719:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29616,12 +28360,12 @@ "arguments": [ { "argumentTypes": null, - "id": 904, + "id": 860, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9717:6:0", + "referencedDeclaration": 814, + "src": "8755:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29637,32 +28381,32 @@ ], "expression": { "argumentTypes": null, - "id": 902, + "id": 858, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9698:14:0", + "referencedDeclaration": 60, + "src": "8736:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 903, + "id": 859, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "9698:18:0", + "referencedDeclaration": 1305, + "src": "8736:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 905, + "id": 861, "isConstant": false, "isLValue": false, "isPure": false, @@ -29670,21 +28414,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9698:26:0", + "src": "8736:26:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "9681:43:0", + "src": "8719:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 907, + "id": 863, "nodeType": "ExpressionStatement", - "src": "9681:43:0" + "src": "8719:43:0" }, { "expression": { @@ -29692,12 +28436,12 @@ "arguments": [ { "argumentTypes": null, - "id": 913, + "id": 869, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9754:6:0", + "referencedDeclaration": 814, + "src": "8792:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29715,18 +28459,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 908, + "id": 864, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9734:3:0", + "referencedDeclaration": 1500, + "src": "8772:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 911, + "id": 867, "isConstant": false, "isLValue": false, "isPure": false, @@ -29734,13 +28478,13 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:10:0", + "src": "8772:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 912, + "id": 868, "isConstant": false, "isLValue": false, "isPure": false, @@ -29748,13 +28492,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9734:19:0", + "src": "8772:19:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 914, + "id": 870, "isConstant": false, "isLValue": false, "isPure": false, @@ -29762,15 +28506,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9734:27:0", + "src": "8772:27:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 915, + "id": 871, "nodeType": "ExpressionStatement", - "src": "9734:27:0" + "src": "8772:27:0" }, { "expression": { @@ -29780,18 +28524,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 917, + "id": 873, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9780:3:0", + "referencedDeclaration": 1500, + "src": "8818:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 918, + "id": 874, "isConstant": false, "isLValue": false, "isPure": false, @@ -29799,7 +28543,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9780:10:0", + "src": "8818:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -29807,12 +28551,12 @@ }, { "argumentTypes": null, - "id": 919, + "id": 875, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 858, - "src": "9792:6:0", + "referencedDeclaration": 814, + "src": "8830:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29820,12 +28564,12 @@ }, { "argumentTypes": null, - "id": 920, + "id": 876, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "9800:14:0", + "referencedDeclaration": 60, + "src": "8838:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29847,18 +28591,18 @@ "typeString": "uint256" } ], - "id": 916, + "id": 872, "name": "Withdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 238, - "src": "9771:8:0", + "referencedDeclaration": 194, + "src": "8809:8:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,uint256)" } }, - "id": 921, + "id": 877, "isConstant": false, "isLValue": false, "isPure": false, @@ -29866,20 +28610,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9771:44:0", + "src": "8809:44:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 922, + "id": 878, "nodeType": "ExpressionStatement", - "src": "9771:44:0" + "src": "8809:44:0" } ] }, "documentation": null, - "id": 924, + "id": 880, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -29890,18 +28634,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 861, + "id": 817, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9418:3:0", + "referencedDeclaration": 1500, + "src": "8456:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 862, + "id": 818, "isConstant": false, "isLValue": false, "isPure": false, @@ -29909,44 +28653,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9418:10:0", + "src": "8456:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 863, + "id": 819, "modifierName": { "argumentTypes": null, - "id": 860, + "id": 816, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9405:12:0", + "referencedDeclaration": 305, + "src": "8443:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9405:24:0" + "src": "8443:24:0" } ], "name": "withdraw", "nodeType": "FunctionDefinition", "parameters": { - "id": 859, + "id": 815, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 858, + "id": 814, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 924, - "src": "9382:14:0", + "scope": 880, + "src": "8420:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -29954,10 +28698,10 @@ "typeString": "uint256" }, "typeName": { - "id": 857, + "id": 813, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9382:7:0", + "src": "8420:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -29967,39 +28711,39 @@ "visibility": "internal" } ], - "src": "9381:16:0" + "src": "8419:16:0" }, "payable": false, "returnParameters": { - "id": 864, + "id": 820, "nodeType": "ParameterList", "parameters": [], - "src": "9430:0:0" + "src": "8468:0:0" }, - "scope": 1194, - "src": "9364:458:0", + "scope": 1146, + "src": "8402:458:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1011, + "id": 964, "nodeType": "Block", - "src": "9958:503:0", + "src": "8997:458:0", "statements": [ { "assignments": [ - 936 + 892 ], "declarations": [ { "constant": false, - "id": 936, + "id": 892, "name": "newTotal", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9968:16:0", + "scope": 965, + "src": "9007:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -30007,10 +28751,10 @@ "typeString": "uint256" }, "typeName": { - "id": 935, + "id": 891, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9968:7:0", + "src": "9007:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30020,7 +28764,7 @@ "visibility": "internal" } ], - "id": 942, + "id": 898, "initialValue": { "argumentTypes": null, "arguments": [ @@ -30028,18 +28772,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 938, + "id": 894, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10025:3:0", + "referencedDeclaration": 1500, + "src": "9064:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 939, + "id": 895, "isConstant": false, "isLValue": false, "isPure": false, @@ -30047,7 +28791,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10025:10:0", + "src": "9064:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30055,12 +28799,12 @@ }, { "argumentTypes": null, - "id": 940, + "id": 896, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10037:5:0", + "referencedDeclaration": 884, + "src": "9076:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30078,18 +28822,18 @@ "typeString": "address" } ], - "id": 937, + "id": 893, "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1164, - "src": "9987:37:0", + "referencedDeclaration": 1116, + "src": "9026:37:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$_t_address_$returns$_t_uint256_$", "typeString": "function (address,address) view returns (uint256)" } }, - "id": 941, + "id": 897, "isConstant": false, "isLValue": false, "isPure": false, @@ -30097,14 +28841,14 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "9987:56:0", + "src": "9026:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "9968:75:0" + "src": "9007:75:0" }, { "condition": { @@ -30113,19 +28857,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 954, + "id": 910, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 943, + "id": 899, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10057:6:0", + "referencedDeclaration": 882, + "src": "9096:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30144,34 +28888,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 946, + "id": 902, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10079:7:0", + "referencedDeclaration": 73, + "src": "9118:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 949, + "id": 905, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 947, + "id": 903, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10087:3:0", + "referencedDeclaration": 1500, + "src": "9126:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 948, + "id": 904, "isConstant": false, "isLValue": false, "isPure": false, @@ -30179,7 +28923,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10087:10:0", + "src": "9126:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30190,35 +28934,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:19:0", + "src": "9118:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 950, + "id": 906, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10079:35:0", + "referencedDeclaration": 90, + "src": "9118:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 952, + "id": 908, "indexExpression": { "argumentTypes": null, - "id": 951, + "id": 907, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10115:5:0", + "referencedDeclaration": 884, + "src": "9154:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30229,7 +28973,7 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10079:42:0", + "src": "9118:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30245,32 +28989,32 @@ ], "expression": { "argumentTypes": null, - "id": 944, + "id": 900, "name": "newTotal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 936, - "src": "10066:8:0", + "referencedDeclaration": 892, + "src": "9105:8:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 945, + "id": 901, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "10066:12:0", + "referencedDeclaration": 1281, + "src": "9105:12:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 953, + "id": 909, "isConstant": false, "isLValue": false, "isPure": false, @@ -30278,43 +29022,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10066:56:0", + "src": "9105:56:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10057:65:0", + "src": "9096:65:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 958, + "id": 914, "nodeType": "IfStatement", - "src": "10053:79:0", + "src": "9092:79:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 955, + "id": 911, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10124:6:0", + "referencedDeclaration": 1505, + "src": "9163:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 956, + "id": 912, "isConstant": false, "isLValue": false, "isPure": false, @@ -30322,21 +29066,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10124:8:0", + "src": "9163:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 957, + "id": 913, "nodeType": "ExpressionStatement", - "src": "10124:8:0" + "src": "9163:8:0" } }, { "expression": { "argumentTypes": null, - "id": 976, + "id": 932, "isConstant": false, "isLValue": false, "isPure": false, @@ -30349,34 +29093,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 959, + "id": 915, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10143:7:0", + "referencedDeclaration": 73, + "src": "9182:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 962, + "id": 918, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 960, + "id": 916, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10151:3:0", + "referencedDeclaration": 1500, + "src": "9190:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 961, + "id": 917, "isConstant": false, "isLValue": false, "isPure": false, @@ -30384,7 +29128,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10151:10:0", + "src": "9190:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30395,35 +29139,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10143:19:0", + "src": "9182:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 963, + "id": 919, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10143:35:0", + "referencedDeclaration": 90, + "src": "9182:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 965, + "id": 921, "indexExpression": { "argumentTypes": null, - "id": 964, + "id": 920, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10179:5:0", + "referencedDeclaration": 884, + "src": "9218:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30434,7 +29178,7 @@ "isPure": false, "lValueRequested": true, "nodeType": "IndexAccess", - "src": "10143:42:0", + "src": "9182:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30447,12 +29191,12 @@ "arguments": [ { "argumentTypes": null, - "id": 974, + "id": 930, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10235:6:0", + "referencedDeclaration": 882, + "src": "9274:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30474,34 +29218,34 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 966, + "id": 922, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "10188:7:0", + "referencedDeclaration": 73, + "src": "9227:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 969, + "id": 925, "indexExpression": { "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 967, + "id": 923, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10196:3:0", + "referencedDeclaration": 1500, + "src": "9235:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 968, + "id": 924, "isConstant": false, "isLValue": false, "isPure": false, @@ -30509,7 +29253,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10196:10:0", + "src": "9235:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30520,35 +29264,35 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:19:0", + "src": "9227:19:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 970, + "id": 926, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "tokensWithdrawn", "nodeType": "MemberAccess", - "referencedDeclaration": 91, - "src": "10188:35:0", + "referencedDeclaration": 90, + "src": "9227:35:0", "typeDescriptions": { "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", "typeString": "mapping(address => uint256)" } }, - "id": 972, + "id": 928, "indexExpression": { "argumentTypes": null, - "id": 971, + "id": 927, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10224:5:0", + "referencedDeclaration": 884, + "src": "9263:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30559,27 +29303,27 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "10188:42:0", + "src": "9227:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 973, + "id": 929, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10188:46:0", + "referencedDeclaration": 1305, + "src": "9227:46:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 975, + "id": 931, "isConstant": false, "isLValue": false, "isPure": false, @@ -30587,81 +29331,65 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10188:54:0", + "src": "9227:54:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10143:99:0", + "src": "9182:99:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 977, + "id": 933, "nodeType": "ExpressionStatement", - "src": "10143:99:0" + "src": "9182:99:0" }, { "expression": { "argumentTypes": null, - "id": 989, + "id": 943, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 978, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10252:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 980, - "indexExpression": { - "argumentTypes": null, - "id": 979, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10259:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10252:13:0", + "id": 934, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9291:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 936, + "indexExpression": { + "argumentTypes": null, + "id": 935, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9298:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 981, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": true, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10252:28:0", + "nodeType": "IndexAccess", + "src": "9291:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30674,12 +29402,12 @@ "arguments": [ { "argumentTypes": null, - "id": 987, + "id": 941, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10316:6:0", + "referencedDeclaration": 882, + "src": "9325:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30695,75 +29423,59 @@ ], "expression": { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 982, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10283:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 984, - "indexExpression": { - "argumentTypes": null, - "id": 983, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10290:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10283:13:0", + "id": 937, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9307:6:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 939, + "indexExpression": { + "argumentTypes": null, + "id": 938, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9314:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 985, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10283:28:0", + "nodeType": "IndexAccess", + "src": "9307:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 986, + "id": 940, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10283:32:0", + "referencedDeclaration": 1305, + "src": "9307:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 988, + "id": 942, "isConstant": false, "isLValue": false, "isPure": false, @@ -30771,21 +29483,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10283:40:0", + "src": "9307:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10252:71:0", + "src": "9291:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 990, + "id": 944, "nodeType": "ExpressionStatement", - "src": "10252:71:0" + "src": "9291:41:0" }, { "expression": { @@ -30795,18 +29507,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 995, + "id": 949, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10355:3:0", + "referencedDeclaration": 1500, + "src": "9364:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 996, + "id": 950, "isConstant": false, "isLValue": false, "isPure": false, @@ -30814,7 +29526,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10355:10:0", + "src": "9364:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30822,12 +29534,12 @@ }, { "argumentTypes": null, - "id": 997, + "id": 951, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10367:6:0", + "referencedDeclaration": 882, + "src": "9376:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30850,12 +29562,12 @@ "arguments": [ { "argumentTypes": null, - "id": 992, + "id": 946, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10339:5:0", + "referencedDeclaration": 884, + "src": "9348:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30869,18 +29581,18 @@ "typeString": "address" } ], - "id": 991, + "id": 945, "name": "ERC20", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1261, - "src": "10333:5:0", + "referencedDeclaration": 1213, + "src": "9342:5:0", "typeDescriptions": { - "typeIdentifier": "t_type$_t_contract$_ERC20_$1261_$", + "typeIdentifier": "t_type$_t_contract$_ERC20_$1213_$", "typeString": "type(contract ERC20)" } }, - "id": 993, + "id": 947, "isConstant": false, "isLValue": false, "isPure": false, @@ -30888,27 +29600,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:12:0", + "src": "9342:12:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20_$1261", + "typeIdentifier": "t_contract$_ERC20_$1213", "typeString": "contract ERC20" } }, - "id": 994, + "id": 948, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "transfer", "nodeType": "MemberAccess", - "referencedDeclaration": 1212, - "src": "10333:21:0", + "referencedDeclaration": 1164, + "src": "9342:21:0", "typeDescriptions": { "typeIdentifier": "t_function_external_nonpayable$_t_address_$_t_uint256_$returns$_t_bool_$", "typeString": "function (address,uint256) external returns (bool)" } }, - "id": 998, + "id": 952, "isConstant": false, "isLValue": false, "isPure": false, @@ -30916,15 +29628,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10333:41:0", + "src": "9342:41:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "id": 999, + "id": 953, "nodeType": "ExpressionStatement", - "src": "10333:41:0" + "src": "9342:41:0" }, { "expression": { @@ -30934,18 +29646,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1001, + "id": 955, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10398:3:0", + "referencedDeclaration": 1500, + "src": "9407:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1002, + "id": 956, "isConstant": false, "isLValue": false, "isPure": false, @@ -30953,7 +29665,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10398:10:0", + "src": "9407:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -30961,12 +29673,12 @@ }, { "argumentTypes": null, - "id": 1003, + "id": 957, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 926, - "src": "10410:6:0", + "referencedDeclaration": 882, + "src": "9419:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -30974,68 +29686,52 @@ }, { "argumentTypes": null, - "id": 1004, + "id": 958, "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10418:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - { - "argumentTypes": null, - "expression": { - "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1005, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "10425:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1007, - "indexExpression": { - "argumentTypes": null, - "id": 1006, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 928, - "src": "10432:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "10425:13:0", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9427:5:0", + "typeDescriptions": { + "typeIdentifier": "t_address", + "typeString": "address" + } + }, + { + "argumentTypes": null, + "baseExpression": { + "argumentTypes": null, + "id": 959, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "9434:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 961, + "indexExpression": { + "argumentTypes": null, + "id": 960, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 884, + "src": "9441:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1008, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "10425:28:0", + "nodeType": "IndexAccess", + "src": "9434:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31061,18 +29757,18 @@ "typeString": "uint256" } ], - "id": 1000, + "id": 954, "name": "TokenWithdraw", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 248, - "src": "10384:13:0", + "referencedDeclaration": 204, + "src": "9393:13:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_uint256_$_t_address_$_t_uint256_$returns$__$", "typeString": "function (address,uint256,address,uint256)" } }, - "id": 1009, + "id": 962, "isConstant": false, "isLValue": false, "isPure": false, @@ -31080,20 +29776,20 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10384:70:0", + "src": "9393:55:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1010, + "id": 963, "nodeType": "ExpressionStatement", - "src": "10384:70:0" + "src": "9393:55:0" } ] }, "documentation": null, - "id": 1012, + "id": 965, "implemented": true, "isConstructor": false, "isDeclaredConst": false, @@ -31104,18 +29800,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 931, + "id": 887, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "9946:3:0", + "referencedDeclaration": 1500, + "src": "8985:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 932, + "id": 888, "isConstant": false, "isLValue": false, "isPure": false, @@ -31123,44 +29819,44 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "9946:10:0", + "src": "8985:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 933, + "id": 889, "modifierName": { "argumentTypes": null, - "id": 930, + "id": 886, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "9933:12:0", + "referencedDeclaration": 305, + "src": "8972:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "9933:24:0" + "src": "8972:24:0" } ], "name": "withdrawToken", "nodeType": "FunctionDefinition", "parameters": { - "id": 929, + "id": 885, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 926, + "id": 882, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9895:14:0", + "scope": 965, + "src": "8934:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31168,10 +29864,10 @@ "typeString": "uint256" }, "typeName": { - "id": 925, + "id": 881, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "9895:7:0", + "src": "8934:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31182,11 +29878,11 @@ }, { "constant": false, - "id": 928, + "id": 884, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1012, - "src": "9911:13:0", + "scope": 965, + "src": "8950:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31194,10 +29890,10 @@ "typeString": "address" }, "typeName": { - "id": 927, + "id": 883, "name": "address", "nodeType": "ElementaryTypeName", - "src": "9911:7:0", + "src": "8950:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31207,26 +29903,26 @@ "visibility": "internal" } ], - "src": "9894:31:0" + "src": "8933:31:0" }, "payable": false, "returnParameters": { - "id": 934, + "id": 890, "nodeType": "ParameterList", "parameters": [], - "src": "9958:0:0" + "src": "8997:0:0" }, - "scope": 1194, - "src": "9872:589:0", + "scope": 1146, + "src": "8911:544:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1050, + "id": 1003, "nodeType": "Block", - "src": "10726:267:0", + "src": "9720:267:0", "statements": [ { "condition": { @@ -31235,19 +29931,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1024, + "id": 977, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1021, + "id": 974, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10740:6:0", + "referencedDeclaration": 967, + "src": "9734:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31260,18 +29956,18 @@ "arguments": [], "expression": { "argumentTypes": [], - "id": 1022, + "id": 975, "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1175, - "src": "10749:39:0", + "referencedDeclaration": 1127, + "src": "9743:39:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$__$returns$_t_uint256_$", "typeString": "function () view returns (uint256)" } }, - "id": 1023, + "id": 976, "isConstant": false, "isLValue": false, "isPure": false, @@ -31279,43 +29975,43 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10749:41:0", + "src": "9743:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10740:50:0", + "src": "9734:50:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, "falseBody": null, - "id": 1028, + "id": 981, "nodeType": "IfStatement", - "src": "10736:64:0", + "src": "9730:64:0", "trueBody": { "expression": { "argumentTypes": null, "arguments": [], "expression": { "argumentTypes": [], - "id": 1025, + "id": 978, "name": "revert", "nodeType": "Identifier", "overloadedDeclarations": [ - 1516, - 1517 + 1505, + 1506 ], - "referencedDeclaration": 1516, - "src": "10792:6:0", + "referencedDeclaration": 1505, + "src": "9786:6:0", "typeDescriptions": { "typeIdentifier": "t_function_revert_pure$__$returns$__$", "typeString": "function () pure" } }, - "id": 1026, + "id": 979, "isConstant": false, "isLValue": false, "isPure": false, @@ -31323,33 +30019,33 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10792:8:0", + "src": "9786:8:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1027, + "id": 980, "nodeType": "ExpressionStatement", - "src": "10792:8:0" + "src": "9786:8:0" } }, { "expression": { "argumentTypes": null, - "id": 1034, + "id": 987, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1029, + "id": 982, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10819:22:0", + "referencedDeclaration": 69, + "src": "9813:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31362,12 +30058,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1032, + "id": 985, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10871:6:0", + "referencedDeclaration": 967, + "src": "9865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31383,32 +30079,32 @@ ], "expression": { "argumentTypes": null, - "id": 1030, + "id": 983, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10844:22:0", + "referencedDeclaration": 69, + "src": "9838:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1031, + "id": 984, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "10844:26:0", + "referencedDeclaration": 1305, + "src": "9838:26:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1033, + "id": 986, "isConstant": false, "isLValue": false, "isPure": false, @@ -31416,21 +30112,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10844:34:0", + "src": "9838:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "10819:59:0", + "src": "9813:59:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1035, + "id": 988, "nodeType": "ExpressionStatement", - "src": "10819:59:0" + "src": "9813:59:0" }, { "expression": { @@ -31438,12 +30134,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1039, + "id": 992, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10900:6:0", + "referencedDeclaration": 967, + "src": "9894:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31459,18 +30155,18 @@ ], "expression": { "argumentTypes": null, - "id": 1036, + "id": 989, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10888:2:0", + "referencedDeclaration": 969, + "src": "9882:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } }, - "id": 1038, + "id": 991, "isConstant": false, "isLValue": false, "isPure": false, @@ -31478,13 +30174,13 @@ "memberName": "transfer", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10888:11:0", + "src": "9882:11:0", "typeDescriptions": { "typeIdentifier": "t_function_transfer_nonpayable$_t_uint256_$returns$__$", "typeString": "function (uint256)" } }, - "id": 1040, + "id": 993, "isConstant": false, "isLValue": false, "isPure": false, @@ -31492,15 +30188,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10888:19:0", + "src": "9882:19:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1041, + "id": 994, "nodeType": "ExpressionStatement", - "src": "10888:19:0" + "src": "9882:19:0" }, { "expression": { @@ -31510,18 +30206,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1043, + "id": 996, "name": "msg", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1511, - "src": "10939:3:0", + "referencedDeclaration": 1500, + "src": "9933:3:0", "typeDescriptions": { "typeIdentifier": "t_magic_message", "typeString": "msg" } }, - "id": 1044, + "id": 997, "isConstant": false, "isLValue": false, "isPure": false, @@ -31529,7 +30225,7 @@ "memberName": "sender", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "10939:10:0", + "src": "9933:10:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31537,12 +30233,12 @@ }, { "argumentTypes": null, - "id": 1045, + "id": 998, "name": "to", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1016, - "src": "10951:2:0", + "referencedDeclaration": 969, + "src": "9945:2:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31550,12 +30246,12 @@ }, { "argumentTypes": null, - "id": 1046, + "id": 999, "name": "amount", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1014, - "src": "10955:6:0", + "referencedDeclaration": 967, + "src": "9949:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31563,12 +30259,12 @@ }, { "argumentTypes": null, - "id": 1047, + "id": 1000, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "10963:22:0", + "referencedDeclaration": 69, + "src": "9957:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31594,18 +30290,18 @@ "typeString": "uint256" } ], - "id": 1042, + "id": 995, "name": "WithdrawSharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 304, - "src": "10917:21:0", + "referencedDeclaration": 260, + "src": "9911:21:0", "typeDescriptions": { "typeIdentifier": "t_function_event_nonpayable$_t_address_$_t_address_$_t_uint256_$_t_uint256_$returns$__$", "typeString": "function (address,address,uint256,uint256)" } }, - "id": 1048, + "id": 1001, "isConstant": false, "isLValue": false, "isPure": false, @@ -31613,57 +30309,57 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "10917:69:0", + "src": "9911:69:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1049, + "id": 1002, "nodeType": "ExpressionStatement", - "src": "10917:69:0" + "src": "9911:69:0" } ] }, "documentation": null, - "id": 1051, + "id": 1004, "implemented": true, "isConstructor": false, "isDeclaredConst": false, "modifiers": [ { "arguments": [], - "id": 1019, + "id": 972, "modifierName": { "argumentTypes": null, - "id": 1018, + "id": 971, "name": "onlyAdmin", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 334, - "src": "10714:9:0", + "referencedDeclaration": 290, + "src": "9708:9:0", "typeDescriptions": { "typeIdentifier": "t_modifier$__$", "typeString": "modifier ()" } }, "nodeType": "ModifierInvocation", - "src": "10714:11:0" + "src": "9708:11:0" } ], "name": "withdrawSharedExpense", "nodeType": "FunctionDefinition", "parameters": { - "id": 1017, + "id": 970, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1014, + "id": 967, "name": "amount", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10679:14:0", + "scope": 1004, + "src": "9673:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31671,10 +30367,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1013, + "id": 966, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "10679:7:0", + "src": "9673:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31685,11 +30381,11 @@ }, { "constant": false, - "id": 1016, + "id": 969, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1051, - "src": "10695:10:0", + "scope": 1004, + "src": "9689:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31697,10 +30393,10 @@ "typeString": "address" }, "typeName": { - "id": 1015, + "id": 968, "name": "address", "nodeType": "ElementaryTypeName", - "src": "10695:7:0", + "src": "9689:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -31710,39 +30406,39 @@ "visibility": "internal" } ], - "src": "10678:28:0" + "src": "9672:28:0" }, "payable": false, "returnParameters": { - "id": 1020, + "id": 973, "nodeType": "ParameterList", "parameters": [], - "src": "10726:0:0" + "src": "9720:0:0" }, - "scope": 1194, - "src": "10648:345:0", + "scope": 1146, + "src": "9642:345:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1112, + "id": 1065, "nodeType": "Block", - "src": "11276:651:0", + "src": "10270:651:0", "statements": [ { "assignments": [ - 1062 + 1015 ], "declarations": [ { "constant": false, - "id": 1062, + "id": 1015, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11424:18:0", + "scope": 1066, + "src": "10418:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -31750,10 +30446,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1061, + "id": 1014, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11424:7:0", + "src": "10418:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31763,18 +30459,18 @@ "visibility": "internal" } ], - "id": 1068, + "id": 1021, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1066, + "id": 1019, "name": "totalWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 61, - "src": "11462:14:0", + "referencedDeclaration": 60, + "src": "10456:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31792,18 +30488,18 @@ "argumentTypes": null, "expression": { "argumentTypes": null, - "id": 1063, + "id": 1016, "name": "this", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1526, - "src": "11445:4:0", + "referencedDeclaration": 1513, + "src": "10439:4:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_Doneth_$1194", + "typeIdentifier": "t_contract$_Doneth_$1146", "typeString": "contract Doneth" } }, - "id": 1064, + "id": 1017, "isConstant": false, "isLValue": false, "isPure": false, @@ -31811,27 +30507,27 @@ "memberName": "balance", "nodeType": "MemberAccess", "referencedDeclaration": null, - "src": "11445:12:0", + "src": "10439:12:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1065, + "id": 1018, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11445:16:0", + "referencedDeclaration": 1305, + "src": "10439:16:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1067, + "id": 1020, "isConstant": false, "isLValue": false, "isPure": false, @@ -31839,31 +30535,31 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11445:32:0", + "src": "10439:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11424:53:0" + "src": "10418:53:0" }, { "expression": { "argumentTypes": null, - "id": 1074, + "id": 1027, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1069, + "id": 1022, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11487:10:0", + "referencedDeclaration": 1015, + "src": "10481:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31876,12 +30572,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1072, + "id": 1025, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "11515:13:0", + "referencedDeclaration": 67, + "src": "10509:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31897,32 +30593,32 @@ ], "expression": { "argumentTypes": null, - "id": 1070, + "id": 1023, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11500:10:0", + "referencedDeclaration": 1015, + "src": "10494:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1071, + "id": 1024, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "11500:14:0", + "referencedDeclaration": 1281, + "src": "10494:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1073, + "id": 1026, "isConstant": false, "isLValue": false, "isPure": false, @@ -31930,38 +30626,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11500:29:0", + "src": "10494:29:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11487:42:0", + "src": "10481:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1075, + "id": 1028, "nodeType": "ExpressionStatement", - "src": "11487:42:0" + "src": "10481:42:0" }, { "expression": { "argumentTypes": null, - "id": 1081, + "id": 1034, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftHandSide": { "argumentTypes": null, - "id": 1076, + "id": 1029, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11539:10:0", + "referencedDeclaration": 1015, + "src": "10533:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31974,12 +30670,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1079, + "id": 1032, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "11567:22:0", + "referencedDeclaration": 69, + "src": "10561:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -31995,32 +30691,32 @@ ], "expression": { "argumentTypes": null, - "id": 1077, + "id": 1030, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11552:10:0", + "referencedDeclaration": 1015, + "src": "10546:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1078, + "id": 1031, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "11552:14:0", + "referencedDeclaration": 1305, + "src": "10546:14:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1080, + "id": 1033, "isConstant": false, "isLValue": false, "isPure": false, @@ -32028,34 +30724,34 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11552:38:0", + "src": "10546:38:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11539:51:0", + "src": "10533:51:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1082, + "id": 1035, "nodeType": "ExpressionStatement", - "src": "11539:51:0" + "src": "10533:51:0" }, { "assignments": [ - 1084 + 1037 ], "declarations": [ { "constant": false, - "id": 1084, + "id": 1037, "name": "ethPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11710:22:0", + "scope": 1066, + "src": "10704:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32063,10 +30759,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1083, + "id": 1036, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11710:7:0", + "src": "10704:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32076,18 +30772,18 @@ "visibility": "internal" } ], - "id": 1090, + "id": 1043, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1087, + "id": 1040, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "11754:11:0", + "referencedDeclaration": 58, + "src": "10748:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32095,12 +30791,12 @@ }, { "argumentTypes": null, - "id": 1088, + "id": 1041, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11767:9:0", + "referencedDeclaration": 65, + "src": "10761:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32120,32 +30816,32 @@ ], "expression": { "argumentTypes": null, - "id": 1085, + "id": 1038, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1062, - "src": "11735:10:0", + "referencedDeclaration": 1015, + "src": "10729:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1086, + "id": 1039, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "11735:18:0", + "referencedDeclaration": 1344, + "src": "10729:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1089, + "id": 1042, "isConstant": false, "isLValue": false, "isPure": false, @@ -32153,27 +30849,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11735:42:0", + "src": "10729:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11710:67:0" + "src": "10704:67:0" }, { "assignments": [ - 1092 + 1045 ], "declarations": [ { "constant": false, - "id": 1092, + "id": 1045, "name": "ethPPN", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11788:14:0", + "scope": 1066, + "src": "10782:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32181,10 +30877,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1091, + "id": 1044, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11788:7:0", + "src": "10782:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32194,7 +30890,7 @@ "visibility": "internal" } ], - "id": 1100, + "id": 1053, "initialValue": { "argumentTypes": null, "arguments": [ @@ -32204,26 +30900,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1095, + "id": 1048, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "11824:7:0", + "referencedDeclaration": 73, + "src": "10818:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1097, + "id": 1050, "indexExpression": { "argumentTypes": null, - "id": 1096, + "id": 1049, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11832:3:0", + "referencedDeclaration": 1006, + "src": "10826:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32234,21 +30930,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "11824:12:0", + "src": "10818:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1098, + "id": 1051, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "11824:19:0", + "referencedDeclaration": 82, + "src": "10818:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32264,32 +30960,32 @@ ], "expression": { "argumentTypes": null, - "id": 1093, + "id": 1046, "name": "ethPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1084, - "src": "11805:14:0", + "referencedDeclaration": 1037, + "src": "10799:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1094, + "id": 1047, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "11805:18:0", + "referencedDeclaration": 1243, + "src": "10799:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1099, + "id": 1052, "isConstant": false, "isLValue": false, "isPure": false, @@ -32297,27 +30993,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11805:39:0", + "src": "10799:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11788:56:0" + "src": "10782:56:0" }, { "assignments": [ - 1102 + 1055 ], "declarations": [ { "constant": false, - "id": 1102, + "id": 1055, "name": "ethVal", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11854:14:0", + "scope": 1066, + "src": "10848:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32325,10 +31021,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1101, + "id": 1054, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11854:7:0", + "src": "10848:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32338,7 +31034,7 @@ "visibility": "internal" } ], - "id": 1109, + "id": 1062, "initialValue": { "argumentTypes": null, "arguments": [ @@ -32348,7 +31044,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1107, + "id": 1060, "isConstant": false, "isLValue": false, "isPure": true, @@ -32356,14 +31052,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1105, + "id": 1058, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "11882:2:0", + "src": "10876:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -32375,18 +31071,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1106, + "id": 1059, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "11886:9:0", + "referencedDeclaration": 65, + "src": "10880:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "11882:13:0", + "src": "10876:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32402,32 +31098,32 @@ ], "expression": { "argumentTypes": null, - "id": 1103, + "id": 1056, "name": "ethPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1092, - "src": "11871:6:0", + "referencedDeclaration": 1045, + "src": "10865:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1104, + "id": 1057, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "11871:10:0", + "referencedDeclaration": 1261, + "src": "10865:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1108, + "id": 1061, "isConstant": false, "isLValue": false, "isPure": false, @@ -32435,38 +31131,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "11871:25:0", + "src": "10865:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "11854:42:0" + "src": "10848:42:0" }, { "expression": { "argumentTypes": null, - "id": 1110, + "id": 1063, "name": "ethVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1102, - "src": "11914:6:0", + "referencedDeclaration": 1055, + "src": "10908:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1060, - "id": 1111, + "functionReturnParameters": 1013, + "id": 1064, "nodeType": "Return", - "src": "11907:13:0" + "src": "10901:13:0" } ] }, "documentation": null, - "id": 1113, + "id": 1066, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -32475,49 +31171,49 @@ "arguments": [ { "argumentTypes": null, - "id": 1056, + "id": 1009, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1053, - "src": "11253:3:0", + "referencedDeclaration": 1006, + "src": "10247:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" } } ], - "id": 1057, + "id": 1010, "modifierName": { "argumentTypes": null, - "id": 1055, + "id": 1008, "name": "onlyExisting", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 349, - "src": "11240:12:0", + "referencedDeclaration": 305, + "src": "10234:12:0", "typeDescriptions": { "typeIdentifier": "t_modifier$_t_address_$", "typeString": "modifier (address)" } }, "nodeType": "ModifierInvocation", - "src": "11240:17:0" + "src": "10234:17:0" } ], "name": "calculateTotalWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1054, + "id": 1007, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1053, + "id": 1006, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11211:11:0", + "scope": 1066, + "src": "10205:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32525,10 +31221,10 @@ "typeString": "address" }, "typeName": { - "id": 1052, + "id": 1005, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11211:7:0", + "src": "10205:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32538,20 +31234,20 @@ "visibility": "internal" } ], - "src": "11210:13:0" + "src": "10204:13:0" }, "payable": false, "returnParameters": { - "id": 1060, + "id": 1013, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1059, + "id": 1012, "name": "", "nodeType": "VariableDeclaration", - "scope": 1113, - "src": "11267:7:0", + "scope": 1066, + "src": "10261:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32559,10 +31255,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1058, + "id": 1011, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "11267:7:0", + "src": "10261:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32572,32 +31268,32 @@ "visibility": "internal" } ], - "src": "11266:9:0" + "src": "10260:9:0" }, - "scope": 1194, - "src": "11169:758:0", + "scope": 1146, + "src": "10163:758:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1163, + "id": 1115, "nodeType": "Block", - "src": "12042:418:0", + "src": "11036:403:0", "statements": [ { "assignments": [ - 1123 + 1076 ], "declarations": [ { "constant": false, - "id": 1123, + "id": 1076, "name": "balanceSum", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12052:18:0", + "scope": 1116, + "src": "11046:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32605,10 +31301,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1122, + "id": 1075, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12052:7:0", + "src": "11046:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32618,61 +31314,45 @@ "visibility": "internal" } ], - "id": 1133, + "id": 1085, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "expression": { + "baseExpression": { "argumentTypes": null, - "baseExpression": { - "argumentTypes": null, - "id": 1128, - "name": "tokens", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 96, - "src": "12102:6:0", - "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Token_$104_storage_$", - "typeString": "mapping(address => struct Doneth.Token storage ref)" - } - }, - "id": 1130, - "indexExpression": { - "argumentTypes": null, - "id": 1129, - "name": "token", - "nodeType": "Identifier", - "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12109:5:0", - "typeDescriptions": { - "typeIdentifier": "t_address", - "typeString": "address" - } - }, - "isConstant": false, - "isLValue": true, - "isPure": false, - "lValueRequested": false, - "nodeType": "IndexAccess", - "src": "12102:13:0", + "id": 1081, + "name": "tokens", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 95, + "src": "11096:6:0", + "typeDescriptions": { + "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$", + "typeString": "mapping(address => uint256)" + } + }, + "id": 1083, + "indexExpression": { + "argumentTypes": null, + "id": 1082, + "name": "token", + "nodeType": "Identifier", + "overloadedDeclarations": [], + "referencedDeclaration": 1070, + "src": "11103:5:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Token_$104_storage", - "typeString": "struct Doneth.Token storage ref" + "typeIdentifier": "t_address", + "typeString": "address" } }, - "id": 1131, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, - "memberName": "totalWithdrawn", - "nodeType": "MemberAccess", - "referencedDeclaration": 103, - "src": "12102:28:0", + "nodeType": "IndexAccess", + "src": "11096:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32691,12 +31371,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1125, + "id": 1078, "name": "token", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1117, - "src": "12091:5:0", + "referencedDeclaration": 1070, + "src": "11085:5:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32710,18 +31390,18 @@ "typeString": "address" } ], - "id": 1124, + "id": 1077, "name": "checkERC20Balance", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 452, - "src": "12073:17:0", + "referencedDeclaration": 408, + "src": "11067:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_address_$returns$_t_uint256_$", "typeString": "function (address) view returns (uint256)" } }, - "id": 1126, + "id": 1079, "isConstant": false, "isLValue": false, "isPure": false, @@ -32729,27 +31409,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:24:0", + "src": "11067:24:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1127, + "id": 1080, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "add", "nodeType": "MemberAccess", - "referencedDeclaration": 1353, - "src": "12073:28:0", + "referencedDeclaration": 1305, + "src": "11067:28:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1132, + "id": 1084, "isConstant": false, "isLValue": false, "isPure": false, @@ -32757,27 +31437,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12073:58:0", + "src": "11067:43:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12052:79:0" + "src": "11046:64:0" }, { "assignments": [ - 1135 + 1087 ], "declarations": [ { "constant": false, - "id": 1135, + "id": 1087, "name": "tokPerSharePPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12243:22:0", + "scope": 1116, + "src": "11222:22:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32785,10 +31465,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1134, + "id": 1086, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12243:7:0", + "src": "11222:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32798,18 +31478,18 @@ "visibility": "internal" } ], - "id": 1141, + "id": 1093, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1138, + "id": 1090, "name": "totalShares", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 59, - "src": "12287:11:0", + "referencedDeclaration": 58, + "src": "11266:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32817,12 +31497,12 @@ }, { "argumentTypes": null, - "id": 1139, + "id": 1091, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12300:9:0", + "referencedDeclaration": 65, + "src": "11279:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32842,32 +31522,32 @@ ], "expression": { "argumentTypes": null, - "id": 1136, + "id": 1088, "name": "balanceSum", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1123, - "src": "12268:10:0", + "referencedDeclaration": 1076, + "src": "11247:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1137, + "id": 1089, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12268:18:0", + "referencedDeclaration": 1344, + "src": "11247:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1140, + "id": 1092, "isConstant": false, "isLValue": false, "isPure": false, @@ -32875,27 +31555,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12268:42:0", + "src": "11247:42:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12243:67:0" + "src": "11222:67:0" }, { "assignments": [ - 1143 + 1095 ], "declarations": [ { "constant": false, - "id": 1143, + "id": 1095, "name": "tokPPN", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12321:14:0", + "scope": 1116, + "src": "11300:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -32903,10 +31583,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1142, + "id": 1094, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12321:7:0", + "src": "11300:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32916,7 +31596,7 @@ "visibility": "internal" } ], - "id": 1151, + "id": 1103, "initialValue": { "argumentTypes": null, "arguments": [ @@ -32926,26 +31606,26 @@ "argumentTypes": null, "baseExpression": { "argumentTypes": null, - "id": 1146, + "id": 1098, "name": "members", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 74, - "src": "12357:7:0", + "referencedDeclaration": 73, + "src": "11336:7:0", "typeDescriptions": { - "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$92_storage_$", + "typeIdentifier": "t_mapping$_t_address_$_t_struct$_Member_$91_storage_$", "typeString": "mapping(address => struct Doneth.Member storage ref)" } }, - "id": 1148, + "id": 1100, "indexExpression": { "argumentTypes": null, - "id": 1147, + "id": 1099, "name": "who", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1115, - "src": "12365:3:0", + "referencedDeclaration": 1068, + "src": "11344:3:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -32956,21 +31636,21 @@ "isPure": false, "lValueRequested": false, "nodeType": "IndexAccess", - "src": "12357:12:0", + "src": "11336:12:0", "typeDescriptions": { - "typeIdentifier": "t_struct$_Member_$92_storage", + "typeIdentifier": "t_struct$_Member_$91_storage", "typeString": "struct Doneth.Member storage ref" } }, - "id": 1149, + "id": 1101, "isConstant": false, "isLValue": true, "isPure": false, "lValueRequested": false, "memberName": "shares", "nodeType": "MemberAccess", - "referencedDeclaration": 83, - "src": "12357:19:0", + "referencedDeclaration": 82, + "src": "11336:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -32986,32 +31666,32 @@ ], "expression": { "argumentTypes": null, - "id": 1144, + "id": 1096, "name": "tokPerSharePPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1135, - "src": "12338:14:0", + "referencedDeclaration": 1087, + "src": "11317:14:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1145, + "id": 1097, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "mul", "nodeType": "MemberAccess", - "referencedDeclaration": 1291, - "src": "12338:18:0", + "referencedDeclaration": 1243, + "src": "11317:18:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1150, + "id": 1102, "isConstant": false, "isLValue": false, "isPure": false, @@ -33019,27 +31699,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12338:39:0", + "src": "11317:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12321:56:0" + "src": "11300:56:0" }, { "assignments": [ - 1153 + 1105 ], "declarations": [ { "constant": false, - "id": 1153, + "id": 1105, "name": "tokVal", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12387:14:0", + "scope": 1116, + "src": "11366:14:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33047,10 +31727,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1152, + "id": 1104, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12387:7:0", + "src": "11366:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33060,7 +31740,7 @@ "visibility": "internal" } ], - "id": 1160, + "id": 1112, "initialValue": { "argumentTypes": null, "arguments": [ @@ -33070,7 +31750,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1158, + "id": 1110, "isConstant": false, "isLValue": false, "isPure": true, @@ -33078,14 +31758,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1156, + "id": 1108, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "12415:2:0", + "src": "11394:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -33097,18 +31777,18 @@ "operator": "**", "rightExpression": { "argumentTypes": null, - "id": 1157, + "id": 1109, "name": "PRECISION", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 66, - "src": "12419:9:0", + "referencedDeclaration": 65, + "src": "11398:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "12415:13:0", + "src": "11394:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33124,32 +31804,32 @@ ], "expression": { "argumentTypes": null, - "id": 1154, + "id": 1106, "name": "tokPPN", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1143, - "src": "12404:6:0", + "referencedDeclaration": 1095, + "src": "11383:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1155, + "id": 1107, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "div", "nodeType": "MemberAccess", - "referencedDeclaration": 1309, - "src": "12404:10:0", + "referencedDeclaration": 1261, + "src": "11383:10:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1159, + "id": 1111, "isConstant": false, "isLValue": false, "isPure": false, @@ -33157,38 +31837,38 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12404:25:0", + "src": "11383:25:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "12387:42:0" + "src": "11366:42:0" }, { "expression": { "argumentTypes": null, - "id": 1161, + "id": 1113, "name": "tokVal", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1153, - "src": "12447:6:0", + "referencedDeclaration": 1105, + "src": "11426:6:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1121, - "id": 1162, + "functionReturnParameters": 1074, + "id": 1114, "nodeType": "Return", - "src": "12440:13:0" + "src": "11419:13:0" } ] }, "documentation": null, - "id": 1164, + "id": 1116, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33196,16 +31876,16 @@ "name": "calculateTotalWithdrawableTokenAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1118, + "id": 1071, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1115, + "id": 1068, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11981:11:0", + "scope": 1116, + "src": "10975:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33213,10 +31893,10 @@ "typeString": "address" }, "typeName": { - "id": 1114, + "id": 1067, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11981:7:0", + "src": "10975:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33227,11 +31907,11 @@ }, { "constant": false, - "id": 1117, + "id": 1070, "name": "token", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "11994:13:0", + "scope": 1116, + "src": "10988:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33239,10 +31919,10 @@ "typeString": "address" }, "typeName": { - "id": 1116, + "id": 1069, "name": "address", "nodeType": "ElementaryTypeName", - "src": "11994:7:0", + "src": "10988:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33252,20 +31932,20 @@ "visibility": "internal" } ], - "src": "11980:28:0" + "src": "10974:28:0" }, "payable": false, "returnParameters": { - "id": 1121, + "id": 1074, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1120, + "id": 1073, "name": "", "nodeType": "VariableDeclaration", - "scope": 1164, - "src": "12033:7:0", + "scope": 1116, + "src": "11027:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33273,10 +31953,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1119, + "id": 1072, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12033:7:0", + "src": "11027:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33286,19 +31966,19 @@ "visibility": "internal" } ], - "src": "12032:9:0" + "src": "11026:9:0" }, - "scope": 1194, - "src": "11934:526:0", + "scope": 1146, + "src": "10928:511:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1174, + "id": 1126, "nodeType": "Block", - "src": "12550:65:0", + "src": "11529:65:0", "statements": [ { "expression": { @@ -33306,12 +31986,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1171, + "id": 1123, "name": "sharedExpenseWithdrawn", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 70, - "src": "12585:22:0", + "referencedDeclaration": 69, + "src": "11564:22:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33327,32 +32007,32 @@ ], "expression": { "argumentTypes": null, - "id": 1169, + "id": 1121, "name": "sharedExpense", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 68, - "src": "12567:13:0", + "referencedDeclaration": 67, + "src": "11546:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1170, + "id": 1122, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "sub", "nodeType": "MemberAccess", - "referencedDeclaration": 1329, - "src": "12567:17:0", + "referencedDeclaration": 1281, + "src": "11546:17:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1172, + "id": 1124, "isConstant": false, "isLValue": false, "isPure": false, @@ -33360,21 +32040,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12567:41:0", + "src": "11546:41:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1168, - "id": 1173, + "functionReturnParameters": 1120, + "id": 1125, "nodeType": "Return", - "src": "12560:48:0" + "src": "11539:48:0" } ] }, "documentation": null, - "id": 1175, + "id": 1127, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33382,23 +32062,23 @@ "name": "calculateTotalExpenseWithdrawableAmount", "nodeType": "FunctionDefinition", "parameters": { - "id": 1165, + "id": 1117, "nodeType": "ParameterList", "parameters": [], - "src": "12514:2:0" + "src": "11493:2:0" }, "payable": false, "returnParameters": { - "id": 1168, + "id": 1120, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1167, + "id": 1119, "name": "", "nodeType": "VariableDeclaration", - "scope": 1175, - "src": "12541:7:0", + "scope": 1127, + "src": "11520:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33406,10 +32086,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1166, + "id": 1118, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12541:7:0", + "src": "11520:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33419,19 +32099,19 @@ "visibility": "internal" } ], - "src": "12540:9:0" + "src": "11519:9:0" }, - "scope": 1194, - "src": "12466:149:0", + "scope": 1146, + "src": "11445:149:0", "stateMutability": "view", "superFunction": null, "visibility": "public" }, { "body": { - "id": 1192, + "id": 1144, "nodeType": "Block", - "src": "12737:39:0", + "src": "11716:39:0", "statements": [ { "expression": { @@ -33439,12 +32119,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1188, + "id": 1140, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1179, - "src": "12764:1:0", + "referencedDeclaration": 1131, + "src": "11743:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33452,12 +32132,12 @@ }, { "argumentTypes": null, - "id": 1189, + "id": 1141, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1181, - "src": "12767:1:0", + "referencedDeclaration": 1133, + "src": "11746:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33477,32 +32157,32 @@ ], "expression": { "argumentTypes": null, - "id": 1186, + "id": 1138, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1177, - "src": "12754:1:0", + "referencedDeclaration": 1129, + "src": "11733:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "id": 1187, + "id": 1139, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "memberName": "percent", "nodeType": "MemberAccess", - "referencedDeclaration": 1392, - "src": "12754:9:0", + "referencedDeclaration": 1344, + "src": "11733:9:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$_t_uint256_$returns$_t_uint256_$bound_to$_t_uint256_$", "typeString": "function (uint256,uint256,uint256) view returns (uint256)" } }, - "id": 1190, + "id": 1142, "isConstant": false, "isLValue": false, "isPure": false, @@ -33510,21 +32190,21 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "12754:15:0", + "src": "11733:15:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1185, - "id": 1191, + "functionReturnParameters": 1137, + "id": 1143, "nodeType": "Return", - "src": "12747:22:0" + "src": "11726:22:0" } ] }, "documentation": null, - "id": 1193, + "id": 1145, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -33532,16 +32212,16 @@ "name": "delegatePercent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1182, + "id": 1134, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1177, + "id": 1129, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12670:9:0", + "scope": 1145, + "src": "11649:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33549,10 +32229,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1176, + "id": 1128, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12670:7:0", + "src": "11649:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33563,11 +32243,11 @@ }, { "constant": false, - "id": 1179, + "id": 1131, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12681:9:0", + "scope": 1145, + "src": "11660:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33575,10 +32255,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1178, + "id": 1130, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12681:7:0", + "src": "11660:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33589,11 +32269,11 @@ }, { "constant": false, - "id": 1181, + "id": 1133, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12692:9:0", + "scope": 1145, + "src": "11671:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33601,10 +32281,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1180, + "id": 1132, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12692:7:0", + "src": "11671:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33614,20 +32294,20 @@ "visibility": "internal" } ], - "src": "12669:33:0" + "src": "11648:33:0" }, "payable": false, "returnParameters": { - "id": 1185, + "id": 1137, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1184, + "id": 1136, "name": "", "nodeType": "VariableDeclaration", - "scope": 1193, - "src": "12728:7:0", + "scope": 1145, + "src": "11707:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33635,10 +32315,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1183, + "id": 1135, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12728:7:0", + "src": "11707:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33648,17 +32328,17 @@ "visibility": "internal" } ], - "src": "12727:9:0" + "src": "11706:9:0" }, - "scope": 1194, - "src": "12645:131:0", + "scope": 1146, + "src": "11624:131:0", "stateMutability": "view", "superFunction": null, "visibility": "public" } ], - "scope": 1394, - "src": "989:11789:0" + "scope": 1346, + "src": "444:11313:0" }, { "baseContracts": [], @@ -33666,20 +32346,20 @@ "contractKind": "contract", "documentation": "@title ERC20Basic\n@dev Simpler version of ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/179", "fullyImplemented": false, - "id": 1221, + "id": 1173, "linearizedBaseContracts": [ - 1221 + 1173 ], "name": "ERC20Basic", "nodeType": "ContractDefinition", "nodes": [ { "constant": false, - "id": 1196, + "id": 1148, "name": "totalSupply", "nodeType": "VariableDeclaration", - "scope": 1221, - "src": "12932:26:0", + "scope": 1173, + "src": "11911:26:0", "stateVariable": true, "storageLocation": "default", "typeDescriptions": { @@ -33687,10 +32367,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1195, + "id": 1147, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "12932:7:0", + "src": "11911:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33702,7 +32382,7 @@ { "body": null, "documentation": null, - "id": 1203, + "id": 1155, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -33710,16 +32390,16 @@ "name": "balanceOf", "nodeType": "FunctionDefinition", "parameters": { - "id": 1199, + "id": 1151, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1198, + "id": 1150, "name": "who", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "12981:11:0", + "scope": 1155, + "src": "11960:11:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33727,10 +32407,10 @@ "typeString": "address" }, "typeName": { - "id": 1197, + "id": 1149, "name": "address", "nodeType": "ElementaryTypeName", - "src": "12981:7:0", + "src": "11960:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33740,20 +32420,20 @@ "visibility": "internal" } ], - "src": "12980:13:0" + "src": "11959:13:0" }, "payable": false, "returnParameters": { - "id": 1202, + "id": 1154, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1201, + "id": 1153, "name": "", "nodeType": "VariableDeclaration", - "scope": 1203, - "src": "13019:7:0", + "scope": 1155, + "src": "11998:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33761,10 +32441,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1200, + "id": 1152, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13019:7:0", + "src": "11998:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33774,10 +32454,10 @@ "visibility": "internal" } ], - "src": "13018:9:0" + "src": "11997:9:0" }, - "scope": 1221, - "src": "12962:66:0", + "scope": 1173, + "src": "11941:66:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -33785,7 +32465,7 @@ { "body": null, "documentation": null, - "id": 1212, + "id": 1164, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -33793,16 +32473,16 @@ "name": "transfer", "nodeType": "FunctionDefinition", "parameters": { - "id": 1208, + "id": 1160, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1205, + "id": 1157, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13049:10:0", + "scope": 1164, + "src": "12028:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33810,10 +32490,10 @@ "typeString": "address" }, "typeName": { - "id": 1204, + "id": 1156, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13049:7:0", + "src": "12028:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33824,11 +32504,11 @@ }, { "constant": false, - "id": 1207, + "id": 1159, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13061:13:0", + "scope": 1164, + "src": "12040:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33836,10 +32516,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1206, + "id": 1158, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13061:7:0", + "src": "12040:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33849,20 +32529,20 @@ "visibility": "internal" } ], - "src": "13048:27:0" + "src": "12027:27:0" }, "payable": false, "returnParameters": { - "id": 1211, + "id": 1163, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1210, + "id": 1162, "name": "", "nodeType": "VariableDeclaration", - "scope": 1212, - "src": "13092:4:0", + "scope": 1164, + "src": "12071:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33870,10 +32550,10 @@ "typeString": "bool" }, "typeName": { - "id": 1209, + "id": 1161, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13092:4:0", + "src": "12071:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -33883,10 +32563,10 @@ "visibility": "internal" } ], - "src": "13091:6:0" + "src": "12070:6:0" }, - "scope": 1221, - "src": "13031:67:0", + "scope": 1173, + "src": "12010:67:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -33894,21 +32574,21 @@ { "anonymous": false, "documentation": null, - "id": 1220, + "id": 1172, "name": "Transfer", "nodeType": "EventDefinition", "parameters": { - "id": 1219, + "id": 1171, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1214, + "id": 1166, "indexed": true, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13116:20:0", + "scope": 1172, + "src": "12095:20:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33916,10 +32596,10 @@ "typeString": "address" }, "typeName": { - "id": 1213, + "id": 1165, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13116:7:0", + "src": "12095:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33930,12 +32610,12 @@ }, { "constant": false, - "id": 1216, + "id": 1168, "indexed": true, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13138:18:0", + "scope": 1172, + "src": "12117:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33943,10 +32623,10 @@ "typeString": "address" }, "typeName": { - "id": 1215, + "id": 1167, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13138:7:0", + "src": "12117:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -33957,12 +32637,12 @@ }, { "constant": false, - "id": 1218, + "id": 1170, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1220, - "src": "13158:13:0", + "scope": 1172, + "src": "12137:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -33970,10 +32650,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1217, + "id": 1169, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13158:7:0", + "src": "12137:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -33983,13 +32663,13 @@ "visibility": "internal" } ], - "src": "13115:57:0" + "src": "12094:57:0" }, - "src": "13101:72:0" + "src": "12080:72:0" } ], - "scope": 1394, - "src": "12908:267:0" + "scope": 1346, + "src": "11887:267:0" }, { "baseContracts": [ @@ -33997,31 +32677,31 @@ "arguments": null, "baseName": { "contractScope": null, - "id": 1222, + "id": 1174, "name": "ERC20Basic", "nodeType": "UserDefinedTypeName", - "referencedDeclaration": 1221, - "src": "13285:10:0", + "referencedDeclaration": 1173, + "src": "12264:10:0", "typeDescriptions": { - "typeIdentifier": "t_contract$_ERC20Basic_$1221", + "typeIdentifier": "t_contract$_ERC20Basic_$1173", "typeString": "contract ERC20Basic" } }, - "id": 1223, + "id": 1175, "nodeType": "InheritanceSpecifier", - "src": "13285:10:0" + "src": "12264:10:0" } ], "contractDependencies": [ - 1221 + 1173 ], "contractKind": "contract", "documentation": "@title ERC20 interface\n@dev see https://github.com/ethereum/EIPs/issues/20", "fullyImplemented": false, - "id": 1261, + "id": 1213, "linearizedBaseContracts": [ - 1261, - 1221 + 1213, + 1173 ], "name": "ERC20", "nodeType": "ContractDefinition", @@ -34029,7 +32709,7 @@ { "body": null, "documentation": null, - "id": 1232, + "id": 1184, "implemented": false, "isConstructor": false, "isDeclaredConst": true, @@ -34037,16 +32717,16 @@ "name": "allowance", "nodeType": "FunctionDefinition", "parameters": { - "id": 1228, + "id": 1180, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1225, + "id": 1177, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13319:13:0", + "scope": 1184, + "src": "12298:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34054,10 +32734,10 @@ "typeString": "address" }, "typeName": { - "id": 1224, + "id": 1176, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13319:7:0", + "src": "12298:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34068,11 +32748,11 @@ }, { "constant": false, - "id": 1227, + "id": 1179, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13334:15:0", + "scope": 1184, + "src": "12313:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34080,10 +32760,10 @@ "typeString": "address" }, "typeName": { - "id": 1226, + "id": 1178, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13334:7:0", + "src": "12313:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34093,20 +32773,20 @@ "visibility": "internal" } ], - "src": "13318:32:0" + "src": "12297:32:0" }, "payable": false, "returnParameters": { - "id": 1231, + "id": 1183, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1230, + "id": 1182, "name": "", "nodeType": "VariableDeclaration", - "scope": 1232, - "src": "13376:7:0", + "scope": 1184, + "src": "12355:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34114,10 +32794,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1229, + "id": 1181, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13376:7:0", + "src": "12355:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34127,10 +32807,10 @@ "visibility": "internal" } ], - "src": "13375:9:0" + "src": "12354:9:0" }, - "scope": 1261, - "src": "13300:85:0", + "scope": 1213, + "src": "12279:85:0", "stateMutability": "view", "superFunction": null, "visibility": "public" @@ -34138,7 +32818,7 @@ { "body": null, "documentation": null, - "id": 1243, + "id": 1195, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -34146,16 +32826,16 @@ "name": "transferFrom", "nodeType": "FunctionDefinition", "parameters": { - "id": 1239, + "id": 1191, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1234, + "id": 1186, "name": "from", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13410:12:0", + "scope": 1195, + "src": "12389:12:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34163,10 +32843,10 @@ "typeString": "address" }, "typeName": { - "id": 1233, + "id": 1185, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13410:7:0", + "src": "12389:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34177,11 +32857,11 @@ }, { "constant": false, - "id": 1236, + "id": 1188, "name": "to", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13424:10:0", + "scope": 1195, + "src": "12403:10:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34189,10 +32869,10 @@ "typeString": "address" }, "typeName": { - "id": 1235, + "id": 1187, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13424:7:0", + "src": "12403:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34203,11 +32883,11 @@ }, { "constant": false, - "id": 1238, + "id": 1190, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13436:13:0", + "scope": 1195, + "src": "12415:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34215,10 +32895,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1237, + "id": 1189, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13436:7:0", + "src": "12415:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34228,20 +32908,20 @@ "visibility": "internal" } ], - "src": "13409:41:0" + "src": "12388:41:0" }, "payable": false, "returnParameters": { - "id": 1242, + "id": 1194, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1241, + "id": 1193, "name": "", "nodeType": "VariableDeclaration", - "scope": 1243, - "src": "13467:4:0", + "scope": 1195, + "src": "12446:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34249,10 +32929,10 @@ "typeString": "bool" }, "typeName": { - "id": 1240, + "id": 1192, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13467:4:0", + "src": "12446:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34262,10 +32942,10 @@ "visibility": "internal" } ], - "src": "13466:6:0" + "src": "12445:6:0" }, - "scope": 1261, - "src": "13388:85:0", + "scope": 1213, + "src": "12367:85:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -34273,7 +32953,7 @@ { "body": null, "documentation": null, - "id": 1252, + "id": 1204, "implemented": false, "isConstructor": false, "isDeclaredConst": false, @@ -34281,16 +32961,16 @@ "name": "approve", "nodeType": "FunctionDefinition", "parameters": { - "id": 1248, + "id": 1200, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1245, + "id": 1197, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13493:15:0", + "scope": 1204, + "src": "12472:15:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34298,10 +32978,10 @@ "typeString": "address" }, "typeName": { - "id": 1244, + "id": 1196, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13493:7:0", + "src": "12472:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34312,11 +32992,11 @@ }, { "constant": false, - "id": 1247, + "id": 1199, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13510:13:0", + "scope": 1204, + "src": "12489:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34324,10 +33004,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1246, + "id": 1198, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13510:7:0", + "src": "12489:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34337,20 +33017,20 @@ "visibility": "internal" } ], - "src": "13492:32:0" + "src": "12471:32:0" }, "payable": false, "returnParameters": { - "id": 1251, + "id": 1203, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1250, + "id": 1202, "name": "", "nodeType": "VariableDeclaration", - "scope": 1252, - "src": "13541:4:0", + "scope": 1204, + "src": "12520:4:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34358,10 +33038,10 @@ "typeString": "bool" }, "typeName": { - "id": 1249, + "id": 1201, "name": "bool", "nodeType": "ElementaryTypeName", - "src": "13541:4:0", + "src": "12520:4:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34371,10 +33051,10 @@ "visibility": "internal" } ], - "src": "13540:6:0" + "src": "12519:6:0" }, - "scope": 1261, - "src": "13476:71:0", + "scope": 1213, + "src": "12455:71:0", "stateMutability": "nonpayable", "superFunction": null, "visibility": "public" @@ -34382,21 +33062,21 @@ { "anonymous": false, "documentation": null, - "id": 1260, + "id": 1212, "name": "Approval", "nodeType": "EventDefinition", "parameters": { - "id": 1259, + "id": 1211, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1254, + "id": 1206, "indexed": true, "name": "owner", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13565:21:0", + "scope": 1212, + "src": "12544:21:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34404,10 +33084,10 @@ "typeString": "address" }, "typeName": { - "id": 1253, + "id": 1205, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13565:7:0", + "src": "12544:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34418,12 +33098,12 @@ }, { "constant": false, - "id": 1256, + "id": 1208, "indexed": true, "name": "spender", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13588:23:0", + "scope": 1212, + "src": "12567:23:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34431,10 +33111,10 @@ "typeString": "address" }, "typeName": { - "id": 1255, + "id": 1207, "name": "address", "nodeType": "ElementaryTypeName", - "src": "13588:7:0", + "src": "12567:7:0", "typeDescriptions": { "typeIdentifier": "t_address", "typeString": "address" @@ -34445,12 +33125,12 @@ }, { "constant": false, - "id": 1258, + "id": 1210, "indexed": false, "name": "value", "nodeType": "VariableDeclaration", - "scope": 1260, - "src": "13613:13:0", + "scope": 1212, + "src": "12592:13:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34458,10 +33138,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1257, + "id": 1209, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13613:7:0", + "src": "12592:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34471,13 +33151,13 @@ "visibility": "internal" } ], - "src": "13564:63:0" + "src": "12543:63:0" }, - "src": "13550:78:0" + "src": "12529:78:0" } ], - "scope": 1394, - "src": "13267:363:0" + "scope": 1346, + "src": "12246:363:0" }, { "baseContracts": [], @@ -34485,31 +33165,31 @@ "contractKind": "library", "documentation": "@title SafeMath\n@dev Math operations with safety checks that throw on error", "fullyImplemented": true, - "id": 1393, + "id": 1345, "linearizedBaseContracts": [ - 1393 + 1345 ], "name": "SafeMath", "nodeType": "ContractDefinition", "nodes": [ { "body": { - "id": 1290, + "id": 1242, "nodeType": "Block", - "src": "13817:90:0", + "src": "12796:90:0", "statements": [ { "assignments": [ - 1271 + 1223 ], "declarations": [ { "constant": false, - "id": 1271, + "id": 1223, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13827:9:0", + "scope": 1243, + "src": "12806:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34517,10 +33197,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1270, + "id": 1222, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13827:7:0", + "src": "12806:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34530,26 +33210,26 @@ "visibility": "internal" } ], - "id": 1275, + "id": 1227, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1274, + "id": 1226, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1272, + "id": 1224, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13839:1:0", + "referencedDeclaration": 1215, + "src": "12818:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34559,25 +33239,25 @@ "operator": "*", "rightExpression": { "argumentTypes": null, - "id": 1273, + "id": 1225, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13843:1:0", + "referencedDeclaration": 1217, + "src": "12822:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13839:5:0", + "src": "12818:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "13827:17:0" + "src": "12806:17:0" }, { "expression": { @@ -34589,7 +33269,7 @@ "typeIdentifier": "t_bool", "typeString": "bool" }, - "id": 1285, + "id": 1237, "isConstant": false, "isLValue": false, "isPure": false, @@ -34600,19 +33280,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1279, + "id": 1231, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1277, + "id": 1229, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13861:1:0", + "referencedDeclaration": 1215, + "src": "12840:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34623,14 +33303,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "30", - "id": 1278, + "id": 1230, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "13866:1:0", + "src": "12845:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_0_by_1", @@ -34638,7 +33318,7 @@ }, "value": "0" }, - "src": "13861:6:0", + "src": "12840:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34652,7 +33332,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1284, + "id": 1236, "isConstant": false, "isLValue": false, "isPure": false, @@ -34663,19 +33343,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1282, + "id": 1234, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1280, + "id": 1232, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13871:1:0", + "referencedDeclaration": 1223, + "src": "12850:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34685,18 +33365,18 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1281, + "id": 1233, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1263, - "src": "13875:1:0", + "referencedDeclaration": 1215, + "src": "12854:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:5:0", + "src": "12850:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34706,24 +33386,24 @@ "operator": "==", "rightExpression": { "argumentTypes": null, - "id": 1283, + "id": 1235, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1265, - "src": "13880:1:0", + "referencedDeclaration": 1217, + "src": "12859:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "13871:10:0", + "src": "12850:10:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" } }, - "src": "13861:20:0", + "src": "12840:20:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -34737,18 +33417,18 @@ "typeString": "bool" } ], - "id": 1276, + "id": 1228, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "13854:6:0", + "referencedDeclaration": 1489, + "src": "12833:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1286, + "id": 1238, "isConstant": false, "isLValue": false, "isPure": false, @@ -34756,39 +33436,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "13854:28:0", + "src": "12833:28:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1287, + "id": 1239, "nodeType": "ExpressionStatement", - "src": "13854:28:0" + "src": "12833:28:0" }, { "expression": { "argumentTypes": null, - "id": 1288, + "id": 1240, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1271, - "src": "13899:1:0", + "referencedDeclaration": 1223, + "src": "12878:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1269, - "id": 1289, + "functionReturnParameters": 1221, + "id": 1241, "nodeType": "Return", - "src": "13892:8:0" + "src": "12871:8:0" } ] }, "documentation": null, - "id": 1291, + "id": 1243, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -34796,16 +33476,16 @@ "name": "mul", "nodeType": "FunctionDefinition", "parameters": { - "id": 1266, + "id": 1218, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1263, + "id": 1215, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13759:9:0", + "scope": 1243, + "src": "12738:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34813,10 +33493,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1262, + "id": 1214, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13759:7:0", + "src": "12738:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34827,11 +33507,11 @@ }, { "constant": false, - "id": 1265, + "id": 1217, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13770:9:0", + "scope": 1243, + "src": "12749:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34839,10 +33519,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1264, + "id": 1216, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13770:7:0", + "src": "12749:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34852,20 +33532,20 @@ "visibility": "internal" } ], - "src": "13758:22:0" + "src": "12737:22:0" }, "payable": false, "returnParameters": { - "id": 1269, + "id": 1221, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1268, + "id": 1220, "name": "", "nodeType": "VariableDeclaration", - "scope": 1291, - "src": "13808:7:0", + "scope": 1243, + "src": "12787:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34873,10 +33553,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1267, + "id": 1219, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13808:7:0", + "src": "12787:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34886,32 +33566,32 @@ "visibility": "internal" } ], - "src": "13807:9:0" + "src": "12786:9:0" }, - "scope": 1393, - "src": "13746:161:0", + "scope": 1345, + "src": "12725:161:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1308, + "id": 1260, "nodeType": "Block", - "src": "13984:216:0", + "src": "12963:216:0", "statements": [ { "assignments": [ - 1301 + 1253 ], "declarations": [ { "constant": false, - "id": 1301, + "id": 1253, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "14072:9:0", + "scope": 1261, + "src": "13051:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -34919,10 +33599,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1300, + "id": 1252, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14072:7:0", + "src": "13051:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34932,26 +33612,26 @@ "visibility": "internal" } ], - "id": 1305, + "id": 1257, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1304, + "id": 1256, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1302, + "id": 1254, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1293, - "src": "14084:1:0", + "referencedDeclaration": 1245, + "src": "13063:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -34961,49 +33641,49 @@ "operator": "/", "rightExpression": { "argumentTypes": null, - "id": 1303, + "id": 1255, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1295, - "src": "14088:1:0", + "referencedDeclaration": 1247, + "src": "13067:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14084:5:0", + "src": "13063:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14072:17:0" + "src": "13051:17:0" }, { "expression": { "argumentTypes": null, - "id": 1306, + "id": 1258, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1301, - "src": "14192:1:0", + "referencedDeclaration": 1253, + "src": "13171:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1299, - "id": 1307, + "functionReturnParameters": 1251, + "id": 1259, "nodeType": "Return", - "src": "14185:8:0" + "src": "13164:8:0" } ] }, "documentation": null, - "id": 1309, + "id": 1261, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35011,16 +33691,16 @@ "name": "div", "nodeType": "FunctionDefinition", "parameters": { - "id": 1296, + "id": 1248, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1293, + "id": 1245, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13926:9:0", + "scope": 1261, + "src": "12905:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35028,10 +33708,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1292, + "id": 1244, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13926:7:0", + "src": "12905:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35042,11 +33722,11 @@ }, { "constant": false, - "id": 1295, + "id": 1247, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13937:9:0", + "scope": 1261, + "src": "12916:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35054,10 +33734,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1294, + "id": 1246, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13937:7:0", + "src": "12916:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35067,20 +33747,20 @@ "visibility": "internal" } ], - "src": "13925:22:0" + "src": "12904:22:0" }, "payable": false, "returnParameters": { - "id": 1299, + "id": 1251, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1298, + "id": 1250, "name": "", "nodeType": "VariableDeclaration", - "scope": 1309, - "src": "13975:7:0", + "scope": 1261, + "src": "12954:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35088,10 +33768,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1297, + "id": 1249, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "13975:7:0", + "src": "12954:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35101,19 +33781,19 @@ "visibility": "internal" } ], - "src": "13974:9:0" + "src": "12953:9:0" }, - "scope": 1393, - "src": "13913:287:0", + "scope": 1345, + "src": "12892:287:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1328, + "id": 1280, "nodeType": "Block", - "src": "14277:53:0", + "src": "13256:53:0", "statements": [ { "expression": { @@ -35125,19 +33805,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1321, + "id": 1273, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1319, + "id": 1271, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14294:1:0", + "referencedDeclaration": 1265, + "src": "13273:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35147,18 +33827,18 @@ "operator": "<=", "rightExpression": { "argumentTypes": null, - "id": 1320, + "id": 1272, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14299:1:0", + "referencedDeclaration": 1263, + "src": "13278:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14294:6:0", + "src": "13273:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35172,18 +33852,18 @@ "typeString": "bool" } ], - "id": 1318, + "id": 1270, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14287:6:0", + "referencedDeclaration": 1489, + "src": "13266:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1322, + "id": 1274, "isConstant": false, "isLValue": false, "isPure": false, @@ -35191,15 +33871,15 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14287:14:0", + "src": "13266:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1323, + "id": 1275, "nodeType": "ExpressionStatement", - "src": "14287:14:0" + "src": "13266:14:0" }, { "expression": { @@ -35208,19 +33888,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1326, + "id": 1278, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1324, + "id": 1276, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1311, - "src": "14318:1:0", + "referencedDeclaration": 1263, + "src": "13297:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35230,32 +33910,32 @@ "operator": "-", "rightExpression": { "argumentTypes": null, - "id": 1325, + "id": 1277, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1313, - "src": "14322:1:0", + "referencedDeclaration": 1265, + "src": "13301:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14318:5:0", + "src": "13297:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1317, - "id": 1327, + "functionReturnParameters": 1269, + "id": 1279, "nodeType": "Return", - "src": "14311:12:0" + "src": "13290:12:0" } ] }, "documentation": null, - "id": 1329, + "id": 1281, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35263,16 +33943,16 @@ "name": "sub", "nodeType": "FunctionDefinition", "parameters": { - "id": 1314, + "id": 1266, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1311, + "id": 1263, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14219:9:0", + "scope": 1281, + "src": "13198:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35280,10 +33960,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1310, + "id": 1262, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14219:7:0", + "src": "13198:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35294,11 +33974,11 @@ }, { "constant": false, - "id": 1313, + "id": 1265, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14230:9:0", + "scope": 1281, + "src": "13209:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35306,10 +33986,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1312, + "id": 1264, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14230:7:0", + "src": "13209:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35319,20 +33999,20 @@ "visibility": "internal" } ], - "src": "14218:22:0" + "src": "13197:22:0" }, "payable": false, "returnParameters": { - "id": 1317, + "id": 1269, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1316, + "id": 1268, "name": "", "nodeType": "VariableDeclaration", - "scope": 1329, - "src": "14268:7:0", + "scope": 1281, + "src": "13247:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35340,10 +34020,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1315, + "id": 1267, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14268:7:0", + "src": "13247:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35353,32 +34033,32 @@ "visibility": "internal" } ], - "src": "14267:9:0" + "src": "13246:9:0" }, - "scope": 1393, - "src": "14206:124:0", + "scope": 1345, + "src": "13185:124:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1352, + "id": 1304, "nodeType": "Block", - "src": "14407:76:0", + "src": "13386:76:0", "statements": [ { "assignments": [ - 1339 + 1291 ], "declarations": [ { "constant": false, - "id": 1339, + "id": 1291, "name": "c", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14417:9:0", + "scope": 1305, + "src": "13396:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35386,10 +34066,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1338, + "id": 1290, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14417:7:0", + "src": "13396:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35399,26 +34079,26 @@ "visibility": "internal" } ], - "id": 1343, + "id": 1295, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1342, + "id": 1294, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1340, + "id": 1292, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14429:1:0", + "referencedDeclaration": 1283, + "src": "13408:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35428,25 +34108,25 @@ "operator": "+", "rightExpression": { "argumentTypes": null, - "id": 1341, + "id": 1293, "name": "b", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1333, - "src": "14433:1:0", + "referencedDeclaration": 1285, + "src": "13412:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14429:5:0", + "src": "13408:5:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14417:17:0" + "src": "13396:17:0" }, { "expression": { @@ -35458,19 +34138,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1347, + "id": 1299, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1345, + "id": 1297, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14451:1:0", + "referencedDeclaration": 1291, + "src": "13430:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35480,18 +34160,18 @@ "operator": ">=", "rightExpression": { "argumentTypes": null, - "id": 1346, + "id": 1298, "name": "a", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1331, - "src": "14456:1:0", + "referencedDeclaration": 1283, + "src": "13435:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14451:6:0", + "src": "13430:6:0", "typeDescriptions": { "typeIdentifier": "t_bool", "typeString": "bool" @@ -35505,18 +34185,18 @@ "typeString": "bool" } ], - "id": 1344, + "id": 1296, "name": "assert", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1500, - "src": "14444:6:0", + "referencedDeclaration": 1489, + "src": "13423:6:0", "typeDescriptions": { "typeIdentifier": "t_function_assert_pure$_t_bool_$returns$__$", "typeString": "function (bool) pure" } }, - "id": 1348, + "id": 1300, "isConstant": false, "isLValue": false, "isPure": false, @@ -35524,39 +34204,39 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14444:14:0", + "src": "13423:14:0", "typeDescriptions": { "typeIdentifier": "t_tuple$__$", "typeString": "tuple()" } }, - "id": 1349, + "id": 1301, "nodeType": "ExpressionStatement", - "src": "14444:14:0" + "src": "13423:14:0" }, { "expression": { "argumentTypes": null, - "id": 1350, + "id": 1302, "name": "c", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1339, - "src": "14475:1:0", + "referencedDeclaration": 1291, + "src": "13454:1:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1337, - "id": 1351, + "functionReturnParameters": 1289, + "id": 1303, "nodeType": "Return", - "src": "14468:8:0" + "src": "13447:8:0" } ] }, "documentation": null, - "id": 1353, + "id": 1305, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -35564,16 +34244,16 @@ "name": "add", "nodeType": "FunctionDefinition", "parameters": { - "id": 1334, + "id": 1286, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1331, + "id": 1283, "name": "a", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14349:9:0", + "scope": 1305, + "src": "13328:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35581,10 +34261,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1330, + "id": 1282, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14349:7:0", + "src": "13328:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35595,11 +34275,11 @@ }, { "constant": false, - "id": 1333, + "id": 1285, "name": "b", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14360:9:0", + "scope": 1305, + "src": "13339:9:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35607,10 +34287,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1332, + "id": 1284, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14360:7:0", + "src": "13339:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35620,20 +34300,20 @@ "visibility": "internal" } ], - "src": "14348:22:0" + "src": "13327:22:0" }, "payable": false, "returnParameters": { - "id": 1337, + "id": 1289, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1336, + "id": 1288, "name": "", "nodeType": "VariableDeclaration", - "scope": 1353, - "src": "14398:7:0", + "scope": 1305, + "src": "13377:7:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35641,10 +34321,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1335, + "id": 1287, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14398:7:0", + "src": "13377:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35654,32 +34334,32 @@ "visibility": "internal" } ], - "src": "14397:9:0" + "src": "13376:9:0" }, - "scope": 1393, - "src": "14336:147:0", + "scope": 1345, + "src": "13315:147:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" }, { "body": { - "id": 1391, + "id": 1343, "nodeType": "Block", - "src": "14768:257:0", + "src": "13747:257:0", "statements": [ { "assignments": [ - 1365 + 1317 ], "declarations": [ { "constant": false, - "id": 1365, + "id": 1317, "name": "_numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14826:18:0", + "scope": 1344, + "src": "13805:18:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35687,10 +34367,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1364, + "id": 1316, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14826:7:0", + "src": "13805:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35700,18 +34380,18 @@ "visibility": "internal" } ], - "id": 1375, + "id": 1327, "initialValue": { "argumentTypes": null, "arguments": [ { "argumentTypes": null, - "id": 1367, + "id": 1319, "name": "numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1355, - "src": "14851:9:0", + "referencedDeclaration": 1307, + "src": "13830:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35723,7 +34403,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1373, + "id": 1325, "isConstant": false, "isLValue": false, "isPure": false, @@ -35731,14 +34411,14 @@ "leftExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1368, + "id": 1320, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14862:2:0", + "src": "13841:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -35757,19 +34437,19 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1371, + "id": 1323, "isConstant": false, "isLValue": false, "isPure": false, "lValueRequested": false, "leftExpression": { "argumentTypes": null, - "id": 1369, + "id": 1321, "name": "precision", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1359, - "src": "14869:9:0", + "referencedDeclaration": 1311, + "src": "13848:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35780,14 +34460,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "31", - "id": 1370, + "id": 1322, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14879:1:0", + "src": "13858:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_1_by_1", @@ -35795,27 +34475,27 @@ }, "value": "1" }, - "src": "14869:11:0", + "src": "13848:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1372, + "id": 1324, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14868:13:0", + "src": "13847:13:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "src": "14862:19:0", + "src": "13841:19:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35833,18 +34513,18 @@ "typeString": "uint256" } ], - "id": 1366, + "id": 1318, "name": "mul", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1291, - "src": "14847:3:0", + "referencedDeclaration": 1243, + "src": "13826:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1374, + "id": 1326, "isConstant": false, "isLValue": false, "isPure": false, @@ -35852,27 +34532,27 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14847:35:0", + "src": "13826:35:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14826:56:0" + "src": "13805:56:0" }, { "assignments": [ - 1377 + 1329 ], "declarations": [ { "constant": false, - "id": 1377, + "id": 1329, "name": "_quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14931:17:0", + "scope": 1344, + "src": "13910:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -35880,10 +34560,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1376, + "id": 1328, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14931:7:0", + "src": "13910:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35893,14 +34573,14 @@ "visibility": "internal" } ], - "id": 1387, + "id": 1339, "initialValue": { "argumentTypes": null, "commonType": { "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1386, + "id": 1338, "isConstant": false, "isLValue": false, "isPure": false, @@ -35914,7 +34594,7 @@ "typeIdentifier": "t_uint256", "typeString": "uint256" }, - "id": 1383, + "id": 1335, "isConstant": false, "isLValue": false, "isPure": false, @@ -35924,12 +34604,12 @@ "arguments": [ { "argumentTypes": null, - "id": 1379, + "id": 1331, "name": "_numerator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1365, - "src": "14956:10:0", + "referencedDeclaration": 1317, + "src": "13935:10:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35937,12 +34617,12 @@ }, { "argumentTypes": null, - "id": 1380, + "id": 1332, "name": "denominator", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1357, - "src": "14968:11:0", + "referencedDeclaration": 1309, + "src": "13947:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35960,18 +34640,18 @@ "typeString": "uint256" } ], - "id": 1378, + "id": 1330, "name": "div", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1309, - "src": "14952:3:0", + "referencedDeclaration": 1261, + "src": "13931:3:0", "typeDescriptions": { "typeIdentifier": "t_function_internal_view$_t_uint256_$_t_uint256_$returns$_t_uint256_$", "typeString": "function (uint256,uint256) view returns (uint256)" } }, - "id": 1381, + "id": 1333, "isConstant": false, "isLValue": false, "isPure": false, @@ -35979,7 +34659,7 @@ "lValueRequested": false, "names": [], "nodeType": "FunctionCall", - "src": "14952:28:0", + "src": "13931:28:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -35990,14 +34670,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "35", - "id": 1382, + "id": 1334, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14983:1:0", + "src": "13962:1:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_5_by_1", @@ -36005,21 +34685,21 @@ }, "value": "5" }, - "src": "14952:32:0", + "src": "13931:32:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1384, + "id": 1336, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "14951:34:0", + "src": "13930:34:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36030,14 +34710,14 @@ "rightExpression": { "argumentTypes": null, "hexValue": "3130", - "id": 1385, + "id": 1337, "isConstant": false, "isLValue": false, "isPure": true, "kind": "number", "lValueRequested": false, "nodeType": "Literal", - "src": "14988:2:0", + "src": "13967:2:0", "subdenomination": null, "typeDescriptions": { "typeIdentifier": "t_rational_10_by_1", @@ -36045,14 +34725,14 @@ }, "value": "10" }, - "src": "14951:39:0", + "src": "13930:39:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, "nodeType": "VariableDeclarationStatement", - "src": "14931:59:0" + "src": "13910:59:0" }, { "expression": { @@ -36060,40 +34740,40 @@ "components": [ { "argumentTypes": null, - "id": 1388, + "id": 1340, "name": "_quotient", "nodeType": "Identifier", "overloadedDeclarations": [], - "referencedDeclaration": 1377, - "src": "15008:9:0", + "referencedDeclaration": 1329, + "src": "13987:9:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } } ], - "id": 1389, + "id": 1341, "isConstant": false, "isInlineArray": false, "isLValue": false, "isPure": false, "lValueRequested": false, "nodeType": "TupleExpression", - "src": "15007:11:0", + "src": "13986:11:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" } }, - "functionReturnParameters": 1363, - "id": 1390, + "functionReturnParameters": 1315, + "id": 1342, "nodeType": "Return", - "src": "15000:18:0" + "src": "13979:18:0" } ] }, "documentation": null, - "id": 1392, + "id": 1344, "implemented": true, "isConstructor": false, "isDeclaredConst": true, @@ -36101,16 +34781,16 @@ "name": "percent", "nodeType": "FunctionDefinition", "parameters": { - "id": 1360, + "id": 1312, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1355, + "id": 1307, "name": "numerator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14665:17:0", + "scope": 1344, + "src": "13644:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36118,10 +34798,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1354, + "id": 1306, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14665:7:0", + "src": "13644:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36132,11 +34812,11 @@ }, { "constant": false, - "id": 1357, + "id": 1309, "name": "denominator", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14684:19:0", + "scope": 1344, + "src": "13663:19:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36144,10 +34824,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1356, + "id": 1308, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14684:7:0", + "src": "13663:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36158,11 +34838,11 @@ }, { "constant": false, - "id": 1359, + "id": 1311, "name": "precision", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14705:17:0", + "scope": 1344, + "src": "13684:17:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36170,10 +34850,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1358, + "id": 1310, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14705:7:0", + "src": "13684:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36183,20 +34863,20 @@ "visibility": "internal" } ], - "src": "14664:59:0" + "src": "13643:59:0" }, "payable": false, "returnParameters": { - "id": 1363, + "id": 1315, "nodeType": "ParameterList", "parameters": [ { "constant": false, - "id": 1362, + "id": 1314, "name": "quotient", "nodeType": "VariableDeclaration", - "scope": 1392, - "src": "14750:16:0", + "scope": 1344, + "src": "13729:16:0", "stateVariable": false, "storageLocation": "default", "typeDescriptions": { @@ -36204,10 +34884,10 @@ "typeString": "uint256" }, "typeName": { - "id": 1361, + "id": 1313, "name": "uint256", "nodeType": "ElementaryTypeName", - "src": "14750:7:0", + "src": "13729:7:0", "typeDescriptions": { "typeIdentifier": "t_uint256", "typeString": "uint256" @@ -36217,20 +34897,20 @@ "visibility": "internal" } ], - "src": "14749:18:0" + "src": "13728:18:0" }, - "scope": 1393, - "src": "14648:377:0", + "scope": 1345, + "src": "13627:377:0", "stateMutability": "view", "superFunction": null, "visibility": "internal" } ], - "scope": 1394, - "src": "13723:1304:0" + "scope": 1346, + "src": "12702:1304:0" } ], - "src": "0:15029:0" + "src": "0:14008:0" }, "compiler": { "name": "solc", @@ -36238,7 +34918,7 @@ }, "networks": {}, "schemaVersion": "3.3.2", - "updatedAt": "2021-05-01T11:15:37.998Z", + "updatedAt": "2021-05-02T12:39:45.344Z", "devdoc": { "methods": {}, "title": "SafeMath" diff --git a/contracts/Doneth.sol b/contracts/Doneth.sol index f85e38a1..84b1662b 100644 --- a/contracts/Doneth.sol +++ b/contracts/Doneth.sol @@ -10,15 +10,12 @@ pragma solidity ^0.4.15; * the member can withdraw from the contract. */ -/* - * Ownable - * - * Base contract with an owner. - * Provides onlyOwner modifier, which prevents function from running - * if it is called by anyone other than the owner. - */ -contract Ownable { +contract Doneth { + + address public implementation; + // constructor(address _implementation) public {} + address public owner; function Ownable() public { @@ -35,10 +32,6 @@ contract Ownable { owner = newOwner; } } -} - -contract Doneth is Ownable { - address public implementation; using SafeMath for uint256; @@ -76,42 +69,24 @@ contract Doneth is Ownable { } // Used to keep track of ERC20 tokens used and how much withdrawn - mapping(address => Token) public tokens; - address[] public tokenKeys; - struct Token { - bool exists; - uint256 totalWithdrawn; - } - - // constructor() public { - // genesisBlockNumber = block.number; - // addMember(tx.origin, 1, true, ""); - // } - + mapping(address => uint256) public tokens; - function init(string _contractName, string _founderName) public { - require(!initialized, "ALREADY INITIALIZED"); + function init() public { + require(!initialized); initialized = true; + owner = tx.origin; genesisBlockNumber = block.number; - if (bytes(_contractName).length > 21) revert(); - if (bytes(_founderName).length > 21) revert(); - name = _contractName; - // addMember(founder, 1, true, _founderName); Member memory newMember; newMember.exists = true; newMember.admin = true; - newMember.memberName = _founderName; - members[tx.origin] = newMember; memberKeys.push(tx.origin); - // addShare(tx.origin, shares); + totalShares = totalShares.add(1); members[tx.origin].shares = members[tx.origin].shares.add(1); AddShare(tx.origin, 1, members[tx.origin].shares); - // AddShare(tx.origin, 1, members[tx.origin].shares); - // AddShare(msg.sender, 1, members[tx.origin].shares); } event Deposit(address from, uint value); @@ -164,10 +139,6 @@ contract Doneth is Ownable { function checkERC20Balance(address token) public constant returns(uint256) { return ERC20(token).balanceOf(address(this)); - // if (!tokens[token].exists && balance > 0) { - // tokens[token].exists = true; - // } - // return balance; } // Function to add members to the contract @@ -263,15 +234,15 @@ contract Doneth is Ownable { Withdraw(msg.sender, amount, totalWithdrawn); } - // Withdrawal function for ERC20 tokens + // Withdrawal function for ERC20 tokensx function withdrawToken(uint256 amount, address token) public onlyExisting(msg.sender) { uint256 newTotal = calculateTotalWithdrawableTokenAmount(msg.sender, token); if (amount > newTotal.sub(members[msg.sender].tokensWithdrawn[token])) revert(); members[msg.sender].tokensWithdrawn[token] = members[msg.sender].tokensWithdrawn[token].add(amount); - tokens[token].totalWithdrawn = tokens[token].totalWithdrawn.add(amount); + tokens[token] = tokens[token].add(amount); ERC20(token).transfer(msg.sender, amount); - TokenWithdraw(msg.sender, amount, token, tokens[token].totalWithdrawn); + TokenWithdraw(msg.sender, amount, token, tokens[token]); } // Withdraw from shared expense allocation. Total withdrawable is calculated as @@ -303,7 +274,7 @@ contract Doneth is Ownable { function calculateTotalWithdrawableTokenAmount(address who, address token) public constant returns(uint256) { - uint256 balanceSum = checkERC20Balance(token).add(tokens[token].totalWithdrawn); + uint256 balanceSum = checkERC20Balance(token).add(tokens[token]); // Need to use parts-per notation to compute percentages for lack of floating point division uint256 tokPerSharePPN = balanceSum.percent(totalShares, PRECISION); diff --git a/contracts/Factory.sol b/contracts/Factory.sol index 18d0d15c..d87a5586 100644 --- a/contracts/Factory.sol +++ b/contracts/Factory.sol @@ -1,72 +1,72 @@ -pragma solidity ^0.4.19; +// pragma solidity ^0.4.19; -import "./Proxy.sol"; +// import "./Proxy.sol"; -/** - * @dev Proxy Factory library to create multiple proxy instances at runtime - * - * @notice i modified this to use a contract instead of a library as it was causing errors - * - * These functions implement a simple Factory pattern that can be used to deploy - * multiple proxy instances when the implementation contract needs to be reused. - */ -contract Proxies { - // Contains the address of the implementation used for the proxies it creates. - struct ProxyFactory { address implementation; } +// /** +// * @dev Proxy Factory library to create multiple proxy instances at runtime +// * +// * @notice i modified this to use a contract instead of a library as it was causing errors +// * +// * These functions implement a simple Factory pattern that can be used to deploy +// * multiple proxy instances when the implementation contract needs to be reused. +// */ +// contract Proxies { +// // Contains the address of the implementation used for the proxies it creates. +// struct ProxyFactory { address implementation; } - /** - * @dev Returns the ProxyFactory struct with the impementation contract address. - * - * Initializes the factory struct by deploying the implementation contract and - * storing its address. - */ - function newFactory(bytes memory creationCode) internal returns (ProxyFactory memory) { - address implementationAddr = _deployImplementation(creationCode); - ProxyFactory memory factory = ProxyFactory(implementationAddr); - return factory; - } +// /** +// * @dev Returns the ProxyFactory struct with the impementation contract address. +// * +// * Initializes the factory struct by deploying the implementation contract and +// * storing its address. +// */ +// function newFactory(bytes memory creationCode) internal returns (ProxyFactory memory) { +// address implementationAddr = _deployImplementation(creationCode); +// ProxyFactory memory factory = ProxyFactory(implementationAddr); +// return factory; +// } - /** - * @dev Deploys a Proxy instance with `admin` and initialized with `initializerData - * - */ - function deploy(ProxyFactory storage self,address admin, bytes memory initializerData) internal returns (address) { - Proxy prox = new Proxy(self.implementation, admin, initializerData); - return address(prox); - } +// /** +// * @dev Deploys a Proxy instance with `admin` and initialized with `initializerData +// * +// */ +// function deploy(ProxyFactory storage self,address admin, bytes memory initializerData) internal returns (address) { +// Proxy prox = new Proxy(self.implementation, admin, initializerData); +// return address(prox); +// } - /** - * @dev Returns the address of the deployed implementation contract. - * - * Creates the implementation contract with `creationCode`. - */ - function _deployImplementation(bytes memory creationCode) private returns (address) { - address payable addr; - // solhint-disable-next-line no-inline-assembly - assembly { - addr := create(0, add(creationCode, 0x20), mload(creationCode)) - if iszero(extcodesize(addr)) { - revert(0, 0) - } - } - return addr; - } -} +// /** +// * @dev Returns the address of the deployed implementation contract. +// * +// * Creates the implementation contract with `creationCode`. +// */ +// function _deployImplementation(bytes memory creationCode) private returns (address) { +// address payable addr; +// // solhint-disable-next-line no-inline-assembly +// assembly { +// addr := create(0, add(creationCode, 0x20), mload(creationCode)) +// if iszero(extcodesize(addr)) { +// revert(0, 0) +// } +// } +// return addr; +// } +// } -contract Factory is Proxies { +// contract Factory is Proxies { - // This struct contains the address of the implementation that is - // used for the proxies it creates. - ProxyFactory factory; +// // This struct contains the address of the implementation that is +// // used for the proxies it creates. +// ProxyFactory factory; - constructor(bytes memory _creationCode) { - // Initializes the factory struct by deploying the implementation - // and storing its address. - factory = Proxies.newFactory(_creationCode); - } +// constructor(bytes memory _creationCode) { +// // Initializes the factory struct by deploying the implementation +// // and storing its address. +// factory = Proxies.newFactory(_creationCode); +// } - // initializerData is the encoded call to the initializer function. - function deployInstance(address admin, bytes memory initializerData) public returns (address) { - return deploy(factory, admin, initializerData); - } -} \ No newline at end of file +// // initializerData is the encoded call to the initializer function. +// function deployInstance(address admin, bytes memory initializerData) public returns (address) { +// return deploy(factory, admin, initializerData); +// } +// } \ No newline at end of file diff --git a/contracts/Proxy.sol b/contracts/Proxy.sol index 26b808b6..e80ce392 100644 --- a/contracts/Proxy.sol +++ b/contracts/Proxy.sol @@ -5,19 +5,17 @@ pragma solidity ^0.4.18; * @dev Gives the possibility to delegate any call to a foreign implementation. */ contract Proxy { - - /** - * @dev Tells the address of the implementation where every call will be delegated. - * @return address of the implementation to which it will be delegated - */ - function implementation() public view returns (address); + address public implementation; + constructor(address _implementation) { + implementation = _implementation; + } /** * @dev Fallback function allowing to perform a delegatecall to the given implementation. * This function will return whatever the implementation call returns */ function () payable public { - address _impl = implementation(); + address _impl = implementation; require(_impl != address(0)); assembly { diff --git a/contracts/ProxyFactory.sol b/contracts/ProxyFactory.sol index 3cd4ceba..9f780c0b 100644 --- a/contracts/ProxyFactory.sol +++ b/contracts/ProxyFactory.sol @@ -28,53 +28,31 @@ * ***/ +import "./Proxy.sol"; + pragma solidity ^0.4.19; +interface IDoneth { + function init() public; +} + /* solhint-disable no-inline-assembly, indent, state-visibility, avoid-low-level-calls */ contract ProxyFactory { - // address public target; - function ProxyFactory() public { - } + address public target; + function ProxyFactory() public {} event ProxyDeployed(address proxyAddress, address targetAddress); - function createProxy(address _target, bytes _data) + function createProxy(address _target) public payable returns (address proxyContract) { - // address _target = ControllerPointer(target).getERC20Main(); - proxyContract = createProxyImpl(_target, _data); - - ProxyDeployed(proxyContract, _target); - } - - function createProxyImpl(address _target, bytes _data) - internal - returns (address proxyContract) - { - assembly { - let contractCode := mload(0x40) // Find empty storage location using "free memory pointer" - - mstore(add(contractCode, 0x0b), _target) // Add target address, with a 11 bytes [i.e. 23 - (32 - 20)] offset to later accomodate first part of the bytecode - mstore(sub(contractCode, 0x09), 0x000000000000000000603160008181600b9039f3600080808080368092803773) // First part of the bytecode, shifted left by 9 bytes, overwrites left padding of target address - mstore(add(contractCode, 0x2b), 0x5af43d828181803e808314602f57f35bfd000000000000000000000000000000) // Final part of bytecode, offset by 43 bytes - - proxyContract := create(0, contractCode, 60) // total length 60 bytes - if iszero(extcodesize(proxyContract)) { - revert(0, 0) - } - - // check if the _data.length > 0 and if it is forward it to the newly created contract - let dataLength := mload(_data) - if iszero(iszero(dataLength)) { - if iszero(call(gas, proxyContract, callvalue, add(_data, 0x20), dataLength, 0, 0)) { - revert(0, 0) - } - } - } + Proxy prox = new Proxy(_target); + IDoneth(address(prox)).init(); + ProxyDeployed(address(prox), _target); } } \ No newline at end of file diff --git a/package.json b/package.json index 2e4de5f7..8a5f4b20 100644 --- a/package.json +++ b/package.json @@ -24,6 +24,7 @@ "web3modal": "^1.9.3" }, "devDependencies": { + "@openzeppelin/contracts": "^3.0.0", "autoprefixer": "^7.1.2", "babel-core": "^6.22.1", "babel-eslint": "^8.2.1", diff --git a/src/components/Contract.vue b/src/components/Contract.vue index bb521628..1ee5869f 100644 --- a/src/components/Contract.vue +++ b/src/components/Contract.vue @@ -2,10 +2,11 @@
-

{{contractName}}

+

{{contractName || 'Unnamed Project'}}

Total Available: {{totalBalance}} Eth ({{totalBalanceEther}})
Created: {{dateTime(timestamp)}}
+
View on Etherscan
@@ -62,7 +63,7 @@ import ShortHash from '@/components/ShortHash' import SectionHeader from '@/components/SectionHeader' import TransactionsList from '@/components/TransactionsList' import UiModal from '@/components/UiModal' -import { mapGetters, mapActions, mapMutations } from 'vuex' +import { mapState, mapGetters, mapActions, mapMutations } from 'vuex' export default { name: 'Contract', @@ -77,7 +78,11 @@ export default { } }, computed: { - ...mapGetters(['metamask', 'members', 'contractName', 'sortedLogs', 'totalBalance', 'totalBalanceRaw', 'currency', 'account', 'isAdmin', 'totalExpense']) + ...mapState(['network']), + ...mapGetters(['metamask', 'members', 'contractName', 'sortedLogs', 'totalBalance', 'totalBalanceRaw', 'currency', 'account', 'isAdmin', 'totalExpense']), + networkURL() { + return this.network == '4' ? 'rinkeby.' : '' + } }, async mounted () { this.connect() diff --git a/src/components/Deploy.vue b/src/components/Deploy.vue index 822c525b..d5e8919a 100644 --- a/src/components/Deploy.vue +++ b/src/components/Deploy.vue @@ -11,7 +11,7 @@