Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save ngyam/9c7feb4ef27c851e2522ab7cf0e31a9f to your computer and use it in GitHub Desktop.
Save ngyam/9c7feb4ef27c851e2522ab7cf0e31a9f to your computer and use it in GitHub Desktop.
MultiSigWalletWithDailyLimitFactory JSON Volta
{
"contractName": "MultiSigWalletWithDailyLimitFactory",
"abi": [
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
}
],
"name": "isInstantiation",
"outputs": [
{
"name": "",
"type": "bool"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "",
"type": "address"
},
{
"name": "",
"type": "uint256"
}
],
"name": "instantiations",
"outputs": [
{
"name": "",
"type": "address"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"constant": true,
"inputs": [
{
"name": "creator",
"type": "address"
}
],
"name": "getInstantiationCount",
"outputs": [
{
"name": "",
"type": "uint256"
}
],
"payable": false,
"stateMutability": "view",
"type": "function"
},
{
"anonymous": false,
"inputs": [
{
"indexed": false,
"name": "sender",
"type": "address"
},
{
"indexed": false,
"name": "instantiation",
"type": "address"
}
],
"name": "ContractInstantiation",
"type": "event"
},
{
"constant": false,
"inputs": [
{
"name": "_owners",
"type": "address[]"
},
{
"name": "_required",
"type": "uint256"
},
{
"name": "_dailyLimit",
"type": "uint256"
}
],
"name": "create",
"outputs": [
{
"name": "wallet",
"type": "address"
}
],
"payable": false,
"stateMutability": "nonpayable",
"type": "function"
}
],
"metadata": "{\"compiler\":{\"version\":\"0.5.8+commit.23d335f2\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"}],\"name\":\"isInstantiation\",\"outputs\":[{\"name\":\"\",\"type\":\"bool\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":false,\"inputs\":[{\"name\":\"_owners\",\"type\":\"address[]\"},{\"name\":\"_required\",\"type\":\"uint256\"},{\"name\":\"_dailyLimit\",\"type\":\"uint256\"}],\"name\":\"create\",\"outputs\":[{\"name\":\"wallet\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"\",\"type\":\"address\"},{\"name\":\"\",\"type\":\"uint256\"}],\"name\":\"instantiations\",\"outputs\":[{\"name\":\"\",\"type\":\"address\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"constant\":true,\"inputs\":[{\"name\":\"creator\",\"type\":\"address\"}],\"name\":\"getInstantiationCount\",\"outputs\":[{\"name\":\"\",\"type\":\"uint256\"}],\"payable\":false,\"stateMutability\":\"view\",\"type\":\"function\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":false,\"name\":\"sender\",\"type\":\"address\"},{\"indexed\":false,\"name\":\"instantiation\",\"type\":\"address\"}],\"name\":\"ContractInstantiation\",\"type\":\"event\"}],\"devdoc\":{\"author\":\"Stefan George - <stefan.george@consensys.net>\",\"methods\":{\"create(address[],uint256,uint256)\":{\"details\":\"Allows verified creation of multisignature wallet.\",\"params\":{\"_dailyLimit\":\"Amount in wei, which can be withdrawn without confirmations on a daily basis.\",\"_owners\":\"List of initial owners.\",\"_required\":\"Number of required confirmations.\"},\"return\":\"Returns wallet address.\"},\"getInstantiationCount(address)\":{\"details\":\"Returns number of instantiations by creator.\",\"params\":{\"creator\":\"Contract creator.\"},\"return\":\"Returns number of instantiations by creator.\"}},\"title\":\"Multisignature wallet factory for daily limit version - Allows creation of multisig wallet.\"},\"userdoc\":{\"methods\":{}}},\"settings\":{\"compilationTarget\":{\"/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWalletWithDailyLimitFactory.sol\":\"MultiSigWalletWithDailyLimitFactory\"},\"evmVersion\":\"petersburg\",\"libraries\":{},\"optimizer\":{\"enabled\":true,\"runs\":500},\"remappings\":[]},\"sources\":{\"/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/Factory.sol\":{\"keccak256\":\"0xcf088fb83913108abc19bae2e40f8f89c1d920cf139044dd4e8337599c4b56c6\",\"urls\":[\"bzzr://83a8f07321e062c989bfbae41a7c0d2e032bd0529880ab17fd6ec6f27482301b\"]},\"/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWallet.sol\":{\"keccak256\":\"0xa21fd466413726bfcabe711c7f1af672bfc9caa34c847933eed711b46bab4da3\",\"urls\":[\"bzzr://572f511fbfc7c8ae2c0c68c1dc4e56c1cd996a68d220e7096edff0a74092a779\"]},\"/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWalletWithDailyLimit.sol\":{\"keccak256\":\"0x3d5501062f73aba1441592f24c9bb602579fd4e9b56820ef99334fa33aeaa567\",\"urls\":[\"bzzr://f7c6bfeaa7b681a2870b5236cb756377232e71ee7a5de7b534c459b7e9d66d55\"]},\"/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWalletWithDailyLimitFactory.sol\":{\"keccak256\":\"0xec5e4f2f58b5b48e432fe3834110cd60e212d2198325c1a3694de2505ec53bca\",\"urls\":[\"bzzr://1b6c1ccd6e4cae274a16230a7d1ccc2aaf80772625b7642cdc8d7ca72c8b9042\"]}},\"version\":1}",
"bytecode": "0x608060405234801561001057600080fd5b50611e31806100206000396000f3fe608060405234801561001057600080fd5b506004361061004c5760003560e01c80632f4f33161461005157806353d9d9101461008b57806357183c821461014f5780638f8384781461017b575b600080fd5b6100776004803603602081101561006757600080fd5b50356001600160a01b03166101b3565b604080519115158252519081900360200190f35b610133600480360360608110156100a157600080fd5b8101906020810181356401000000008111156100bc57600080fd5b8201836020820111156100ce57600080fd5b803590602001918460208302840111640100000000831117156100f057600080fd5b91908080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525092955050823593505050602001356101c8565b604080516001600160a01b039092168252519081900360200190f35b6101336004803603604081101561016557600080fd5b506001600160a01b03813516906020013561025b565b6101a16004803603602081101561019157600080fd5b50356001600160a01b0316610290565b60408051918252519081900360200190f35b60006020819052908152604090205460ff1681565b60008383836040516101d990610343565b6020808201849052604082018390526060808352855190830152845182916080830191878201910280838360005b8381101561021f578181015183820152602001610207565b50505050905001945050505050604051809103906000f080158015610248573d6000803e3d6000fd5b509050610254816102ab565b9392505050565b6001602052816000526040600020818154811061027457fe5b6000918252602090912001546001600160a01b03169150829050565b6001600160a01b031660009081526001602052604090205490565b6001600160a01b038116600081815260208181526040808320805460ff19166001908117909155338085528184528285208054928301815585529383902001805473ffffffffffffffffffffffffffffffffffffffff19168517905580519283529082019290925281517f4fb057ad4a26ed17a57957fa69c306f11987596069b89521c511fc9a894e6161929181900390910190a150565b611ab5806103518339019056fe60806040523480156200001157600080fd5b5060405162001ab538038062001ab5833981018060405260608110156200003757600080fd5b8101908080516401000000008111156200005057600080fd5b820160208101848111156200006457600080fd5b81518560208202830111640100000000821117156200008257600080fd5b505060208201516040909201518151919450919250839083908160328211801590620000ae5750818111155b8015620000ba57508015155b8015620000c657508115155b620000d057600080fd5b60005b8451811015620001a25760026000868381518110620000ee57fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff161580156200014a575060006001600160a01b03168582815181106200013657fe5b60200260200101516001600160a01b031614155b6200015457600080fd5b6001600260008784815181106200016757fe5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055600101620000d3565b508351620001b8906003906020870190620001cb565b50505060045550600655506200025f9050565b82805482825590600052602060002090810192821562000223579160200282015b828111156200022357825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620001ec565b506200023192915062000235565b5090565b6200025c91905b80821115620002315780546001600160a01b03191681556001016200023c565b90565b611846806200026f6000396000f3fe6080604052600436106101a15760003560e01c8063a0e67e2b116100e1578063c64274741161008a578063dc8452cd11610064578063dc8452cd1461071b578063e20056e614610730578063ee22610b1461076b578063f059cf2b14610795576101a1565b8063c642747414610614578063cea08621146106dc578063d74f8edd14610706576101a1565b8063b77bf600116100bb578063b77bf600146105ab578063ba51a6df146105c0578063c01a8c84146105ea576101a1565b8063a0e67e2b146104dc578063a8abe69a14610541578063b5dc40c314610581576101a1565b8063547415251161014e5780637065cb48116101285780637065cb4814610388578063784547a7146103bb5780638b51d13f146103e55780639ace38c21461040f576101a1565b8063547415251461032a57806367eeba0c1461035e5780636b0c932d14610373576101a1565b80632f54bf6e1161017f5780632f54bf6e146102835780633411c81c146102ca5780634bc9fdc214610303576101a1565b8063025e7c27146101e0578063173825d91461022657806320ea8d8614610259575b34156101de5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b3480156101ec57600080fd5b5061020a6004803603602081101561020357600080fd5b50356107aa565b604080516001600160a01b039092168252519081900360200190f35b34801561023257600080fd5b506101de6004803603602081101561024957600080fd5b50356001600160a01b03166107d1565b34801561026557600080fd5b506101de6004803603602081101561027c57600080fd5b503561093d565b34801561028f57600080fd5b506102b6600480360360208110156102a657600080fd5b50356001600160a01b03166109f3565b604080519115158252519081900360200190f35b3480156102d657600080fd5b506102b6600480360360408110156102ed57600080fd5b50803590602001356001600160a01b0316610a08565b34801561030f57600080fd5b50610318610a28565b60408051918252519081900360200190f35b34801561033657600080fd5b506103186004803603604081101561034d57600080fd5b508035151590602001351515610a62565b34801561036a57600080fd5b50610318610ace565b34801561037f57600080fd5b50610318610ad4565b34801561039457600080fd5b506101de600480360360208110156103ab57600080fd5b50356001600160a01b0316610ada565b3480156103c757600080fd5b506102b6600480360360208110156103de57600080fd5b5035610bfb565b3480156103f157600080fd5b506103186004803603602081101561040857600080fd5b5035610c82565b34801561041b57600080fd5b506104396004803603602081101561043257600080fd5b5035610cf1565b60405180856001600160a01b03166001600160a01b031681526020018481526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b8381101561049e578181015183820152602001610486565b50505050905090810190601f1680156104cb5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b3480156104e857600080fd5b506104f1610daf565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561052d578181015183820152602001610515565b505050509050019250505060405180910390f35b34801561054d57600080fd5b506104f16004803603608081101561056457600080fd5b508035906020810135906040810135151590606001351515610e11565b34801561058d57600080fd5b506104f1600480360360208110156105a457600080fd5b5035610f3c565b3480156105b757600080fd5b506103186110b3565b3480156105cc57600080fd5b506101de600480360360208110156105e357600080fd5b50356110b9565b3480156105f657600080fd5b506101de6004803603602081101561060d57600080fd5b5035611136565b34801561062057600080fd5b506103186004803603606081101561063757600080fd5b6001600160a01b038235169160208101359181019060608101604082013564010000000081111561066757600080fd5b82018360208201111561067957600080fd5b8035906020019184600183028401116401000000008311171561069b57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506111fd945050505050565b3480156106e857600080fd5b506101de600480360360208110156106ff57600080fd5b503561121c565b34801561071257600080fd5b50610318611263565b34801561072757600080fd5b50610318611268565b34801561073c57600080fd5b506101de6004803603604081101561075357600080fd5b506001600160a01b038135811691602001351661126e565b34801561077757600080fd5b506101de6004803603602081101561078e57600080fd5b50356113eb565b3480156107a157600080fd5b506103186115fb565b600381815481106107b757fe5b6000918252602090912001546001600160a01b0316905081565b3330146107dd57600080fd5b6001600160a01b038116600090815260026020526040902054819060ff1661080457600080fd5b6001600160a01b0382166000908152600260205260408120805460ff191690555b600354600019018110156108d857826001600160a01b03166003828154811061084a57fe5b6000918252602090912001546001600160a01b031614156108d05760038054600019810190811061087757fe5b600091825260209091200154600380546001600160a01b03909216918390811061089d57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506108d8565b600101610825565b506003805460001901906108ec9082611759565b50600354600454111561090557600354610905906110b9565b6040516001600160a01b038316907f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9090600090a25050565b3360008181526002602052604090205460ff1661095957600080fd5b60008281526001602090815260408083203380855292529091205483919060ff1661098357600080fd5b600084815260208190526040902060030154849060ff16156109a457600080fd5b6000858152600160209081526040808320338085529252808320805460ff191690555187927ff6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e991a35050505050565b60026020526000908152604090205460ff1681565b600160209081526000928352604080842090915290825290205460ff1681565b60006007546201518001421115610a425750600654610a5f565b6008546006541015610a5657506000610a5f565b50600854600654035b90565b6000805b600554811015610ac757838015610a8f575060008181526020819052604090206003015460ff16155b80610ab35750828015610ab3575060008181526020819052604090206003015460ff165b15610abf576001820191505b600101610a66565b5092915050565b60065481565b60075481565b333014610ae657600080fd5b6001600160a01b038116600090815260026020526040902054819060ff1615610b0e57600080fd5b816001600160a01b038116610b2257600080fd5b60038054905060010160045460328211158015610b3f5750818111155b8015610b4a57508015155b8015610b5557508115155b610b5e57600080fd5b6001600160a01b038516600081815260026020526040808220805460ff1916600190811790915560038054918201815583527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01805473ffffffffffffffffffffffffffffffffffffffff191684179055517ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d9190a25050505050565b600080805b600354811015610c7a5760008481526001602052604081206003805491929184908110610c2957fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190205460ff1615610c5d576001820191505b600454821415610c7257600192505050610c7d565b600101610c00565b50505b919050565b6000805b600354811015610ceb5760008381526001602052604081206003805491929184908110610caf57fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190205460ff1615610ce3576001820191505b600101610c86565b50919050565b6000602081815291815260409081902080546001808301546002808501805487516101009582161595909502600019011691909104601f81018890048802840188019096528583526001600160a01b0390931695909491929190830182828015610d9c5780601f10610d7157610100808354040283529160200191610d9c565b820191906000526020600020905b815481529060010190602001808311610d7f57829003601f168201915b5050506003909301549192505060ff1684565b60606003805480602002602001604051908101604052809291908181526020018280548015610e0757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610de9575b5050505050905090565b606080600554604051908082528060200260200182016040528015610e40578160200160208202803883390190505b5090506000805b600554811015610ec157858015610e70575060008181526020819052604090206003015460ff16155b80610e945750848015610e94575060008181526020819052604090206003015460ff165b15610eb95780838381518110610ea657fe5b6020026020010181815250506001820191505b600101610e47565b878703604051908082528060200260200182016040528015610eed578160200160208202803883390190505b5093508790505b86811015610f3157828181518110610f0857fe5b60200260200101518489830381518110610f1e57fe5b6020908102919091010152600101610ef4565b505050949350505050565b606080600380549050604051908082528060200260200182016040528015610f6e578160200160208202803883390190505b5090506000805b6003548110156110315760008581526001602052604081206003805491929184908110610f9e57fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190205460ff16156110295760038181548110610fd857fe5b9060005260206000200160009054906101000a90046001600160a01b031683838151811061100257fe5b60200260200101906001600160a01b031690816001600160a01b0316815250506001820191505b600101610f75565b8160405190808252806020026020018201604052801561105b578160200160208202803883390190505b509350600090505b818110156110ab5782818151811061107757fe5b602002602001015184828151811061108b57fe5b6001600160a01b0390921660209283029190910190910152600101611063565b505050919050565b60055481565b3330146110c557600080fd5b60035481603282118015906110da5750818111155b80156110e557508015155b80156110f057508115155b6110f957600080fd5b60048390556040805184815290517fa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a9181900360200190a1505050565b3360008181526002602052604090205460ff1661115257600080fd5b60008281526020819052604090205482906001600160a01b031661117557600080fd5b60008381526001602090815260408083203380855292529091205484919060ff16156111a057600080fd5b6000858152600160208181526040808420338086529252808420805460ff1916909317909255905187927f4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef91a36111f6856113eb565b5050505050565b600061120a848484611601565b905061121581611136565b9392505050565b33301461122857600080fd5b60068190556040805182815290517fc71bdc6afaf9b1aa90a7078191d4fc1adf3bf680fca3183697df6b0dc226bca29181900360200190a150565b603281565b60045481565b33301461127a57600080fd5b6001600160a01b038216600090815260026020526040902054829060ff166112a157600080fd5b6001600160a01b038216600090815260026020526040902054829060ff16156112c957600080fd5b60005b60035481101561135157846001600160a01b0316600382815481106112ed57fe5b6000918252602090912001546001600160a01b0316141561134957836003828154811061131657fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550611351565b6001016112cc565b506001600160a01b03808516600081815260026020526040808220805460ff1990811690915593871682528082208054909416600117909355915190917f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9091a26040516001600160a01b038416907ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d90600090a250505050565b3360008181526002602052604090205460ff1661140757600080fd5b60008281526001602090815260408083203380855292529091205483919060ff1661143157600080fd5b600084815260208190526040902060030154849060ff161561145257600080fd5b60008581526020819052604081209061146a87610bfb565b9050808061149d575060028083015460001961010060018316150201160415801561149d575061149d82600101546116ef565b156115f25760038201805460ff19166001179055806114c55760018201546008805490910190555b815460018084015460028086018054604080516020601f600019988516156101000298909801909316949094049586018290048202840182019052848352611571956001600160a01b03169492919083908301828280156115675780601f1061153c57610100808354040283529160200191611567565b820191906000526020600020905b81548152906001019060200180831161154a57829003601f168201915b5050505050611736565b156115a65760405187907f33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed7590600090a26115f2565b60405187907f526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b7923690600090a260038201805460ff19169055806115f2576001820154600880549190910390555b50505050505050565b60085481565b6000836001600160a01b03811661161757600080fd5b600554604080516080810182526001600160a01b0388811682526020808301898152838501898152600060608601819052878152808452959095208451815473ffffffffffffffffffffffffffffffffffffffff191694169390931783555160018301559251805194965091939092611697926002850192910190611782565b50606091909101516003909101805460ff191691151591909117905560058054600101905560405182907fc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e5190600090a2509392505050565b6000600754620151800142111561170a574260075560006008555b600654826008540111806117215750600854828101105b1561172e57506000610c7d565b506001919050565b6000806040516020840160008287838a8c6187965a03f198975050505050505050565b81548183558181111561177d5760008381526020902061177d918101908301611800565b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117c357805160ff19168380011785556117f0565b828001600101855582156117f0579182015b828111156117f05782518255916020019190600101906117d5565b506117fc929150611800565b5090565b610a5f91905b808211156117fc576000815560010161180656fea165627a7a723058207acaec3ee67f73ee2d04873233aab0e5e546ef7a696ceefb5c24406d6d0a6bd70029a165627a7a7230582017f977ecdb14a11d8b1868c93158173301fec0965a3f3d06ae40c73007b751f30029",
"deployedBytecode": "0x608060405234801561001057600080fd5b506004361061004c5760003560e01c80632f4f33161461005157806353d9d9101461008b57806357183c821461014f5780638f8384781461017b575b600080fd5b6100776004803603602081101561006757600080fd5b50356001600160a01b03166101b3565b604080519115158252519081900360200190f35b610133600480360360608110156100a157600080fd5b8101906020810181356401000000008111156100bc57600080fd5b8201836020820111156100ce57600080fd5b803590602001918460208302840111640100000000831117156100f057600080fd5b91908080602002602001604051908101604052809392919081815260200183836020028082843760009201919091525092955050823593505050602001356101c8565b604080516001600160a01b039092168252519081900360200190f35b6101336004803603604081101561016557600080fd5b506001600160a01b03813516906020013561025b565b6101a16004803603602081101561019157600080fd5b50356001600160a01b0316610290565b60408051918252519081900360200190f35b60006020819052908152604090205460ff1681565b60008383836040516101d990610343565b6020808201849052604082018390526060808352855190830152845182916080830191878201910280838360005b8381101561021f578181015183820152602001610207565b50505050905001945050505050604051809103906000f080158015610248573d6000803e3d6000fd5b509050610254816102ab565b9392505050565b6001602052816000526040600020818154811061027457fe5b6000918252602090912001546001600160a01b03169150829050565b6001600160a01b031660009081526001602052604090205490565b6001600160a01b038116600081815260208181526040808320805460ff19166001908117909155338085528184528285208054928301815585529383902001805473ffffffffffffffffffffffffffffffffffffffff19168517905580519283529082019290925281517f4fb057ad4a26ed17a57957fa69c306f11987596069b89521c511fc9a894e6161929181900390910190a150565b611ab5806103518339019056fe60806040523480156200001157600080fd5b5060405162001ab538038062001ab5833981018060405260608110156200003757600080fd5b8101908080516401000000008111156200005057600080fd5b820160208101848111156200006457600080fd5b81518560208202830111640100000000821117156200008257600080fd5b505060208201516040909201518151919450919250839083908160328211801590620000ae5750818111155b8015620000ba57508015155b8015620000c657508115155b620000d057600080fd5b60005b8451811015620001a25760026000868381518110620000ee57fe5b6020908102919091018101516001600160a01b031682528101919091526040016000205460ff161580156200014a575060006001600160a01b03168582815181106200013657fe5b60200260200101516001600160a01b031614155b6200015457600080fd5b6001600260008784815181106200016757fe5b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055600101620000d3565b508351620001b8906003906020870190620001cb565b50505060045550600655506200025f9050565b82805482825590600052602060002090810192821562000223579160200282015b828111156200022357825182546001600160a01b0319166001600160a01b03909116178255602090920191600190910190620001ec565b506200023192915062000235565b5090565b6200025c91905b80821115620002315780546001600160a01b03191681556001016200023c565b90565b611846806200026f6000396000f3fe6080604052600436106101a15760003560e01c8063a0e67e2b116100e1578063c64274741161008a578063dc8452cd11610064578063dc8452cd1461071b578063e20056e614610730578063ee22610b1461076b578063f059cf2b14610795576101a1565b8063c642747414610614578063cea08621146106dc578063d74f8edd14610706576101a1565b8063b77bf600116100bb578063b77bf600146105ab578063ba51a6df146105c0578063c01a8c84146105ea576101a1565b8063a0e67e2b146104dc578063a8abe69a14610541578063b5dc40c314610581576101a1565b8063547415251161014e5780637065cb48116101285780637065cb4814610388578063784547a7146103bb5780638b51d13f146103e55780639ace38c21461040f576101a1565b8063547415251461032a57806367eeba0c1461035e5780636b0c932d14610373576101a1565b80632f54bf6e1161017f5780632f54bf6e146102835780633411c81c146102ca5780634bc9fdc214610303576101a1565b8063025e7c27146101e0578063173825d91461022657806320ea8d8614610259575b34156101de5760408051348152905133917fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c919081900360200190a25b005b3480156101ec57600080fd5b5061020a6004803603602081101561020357600080fd5b50356107aa565b604080516001600160a01b039092168252519081900360200190f35b34801561023257600080fd5b506101de6004803603602081101561024957600080fd5b50356001600160a01b03166107d1565b34801561026557600080fd5b506101de6004803603602081101561027c57600080fd5b503561093d565b34801561028f57600080fd5b506102b6600480360360208110156102a657600080fd5b50356001600160a01b03166109f3565b604080519115158252519081900360200190f35b3480156102d657600080fd5b506102b6600480360360408110156102ed57600080fd5b50803590602001356001600160a01b0316610a08565b34801561030f57600080fd5b50610318610a28565b60408051918252519081900360200190f35b34801561033657600080fd5b506103186004803603604081101561034d57600080fd5b508035151590602001351515610a62565b34801561036a57600080fd5b50610318610ace565b34801561037f57600080fd5b50610318610ad4565b34801561039457600080fd5b506101de600480360360208110156103ab57600080fd5b50356001600160a01b0316610ada565b3480156103c757600080fd5b506102b6600480360360208110156103de57600080fd5b5035610bfb565b3480156103f157600080fd5b506103186004803603602081101561040857600080fd5b5035610c82565b34801561041b57600080fd5b506104396004803603602081101561043257600080fd5b5035610cf1565b60405180856001600160a01b03166001600160a01b031681526020018481526020018060200183151515158152602001828103825284818151815260200191508051906020019080838360005b8381101561049e578181015183820152602001610486565b50505050905090810190601f1680156104cb5780820380516001836020036101000a031916815260200191505b509550505050505060405180910390f35b3480156104e857600080fd5b506104f1610daf565b60408051602080825283518183015283519192839290830191858101910280838360005b8381101561052d578181015183820152602001610515565b505050509050019250505060405180910390f35b34801561054d57600080fd5b506104f16004803603608081101561056457600080fd5b508035906020810135906040810135151590606001351515610e11565b34801561058d57600080fd5b506104f1600480360360208110156105a457600080fd5b5035610f3c565b3480156105b757600080fd5b506103186110b3565b3480156105cc57600080fd5b506101de600480360360208110156105e357600080fd5b50356110b9565b3480156105f657600080fd5b506101de6004803603602081101561060d57600080fd5b5035611136565b34801561062057600080fd5b506103186004803603606081101561063757600080fd5b6001600160a01b038235169160208101359181019060608101604082013564010000000081111561066757600080fd5b82018360208201111561067957600080fd5b8035906020019184600183028401116401000000008311171561069b57600080fd5b91908080601f0160208091040260200160405190810160405280939291908181526020018383808284376000920191909152509295506111fd945050505050565b3480156106e857600080fd5b506101de600480360360208110156106ff57600080fd5b503561121c565b34801561071257600080fd5b50610318611263565b34801561072757600080fd5b50610318611268565b34801561073c57600080fd5b506101de6004803603604081101561075357600080fd5b506001600160a01b038135811691602001351661126e565b34801561077757600080fd5b506101de6004803603602081101561078e57600080fd5b50356113eb565b3480156107a157600080fd5b506103186115fb565b600381815481106107b757fe5b6000918252602090912001546001600160a01b0316905081565b3330146107dd57600080fd5b6001600160a01b038116600090815260026020526040902054819060ff1661080457600080fd5b6001600160a01b0382166000908152600260205260408120805460ff191690555b600354600019018110156108d857826001600160a01b03166003828154811061084a57fe5b6000918252602090912001546001600160a01b031614156108d05760038054600019810190811061087757fe5b600091825260209091200154600380546001600160a01b03909216918390811061089d57fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b031602179055506108d8565b600101610825565b506003805460001901906108ec9082611759565b50600354600454111561090557600354610905906110b9565b6040516001600160a01b038316907f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9090600090a25050565b3360008181526002602052604090205460ff1661095957600080fd5b60008281526001602090815260408083203380855292529091205483919060ff1661098357600080fd5b600084815260208190526040902060030154849060ff16156109a457600080fd5b6000858152600160209081526040808320338085529252808320805460ff191690555187927ff6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e991a35050505050565b60026020526000908152604090205460ff1681565b600160209081526000928352604080842090915290825290205460ff1681565b60006007546201518001421115610a425750600654610a5f565b6008546006541015610a5657506000610a5f565b50600854600654035b90565b6000805b600554811015610ac757838015610a8f575060008181526020819052604090206003015460ff16155b80610ab35750828015610ab3575060008181526020819052604090206003015460ff165b15610abf576001820191505b600101610a66565b5092915050565b60065481565b60075481565b333014610ae657600080fd5b6001600160a01b038116600090815260026020526040902054819060ff1615610b0e57600080fd5b816001600160a01b038116610b2257600080fd5b60038054905060010160045460328211158015610b3f5750818111155b8015610b4a57508015155b8015610b5557508115155b610b5e57600080fd5b6001600160a01b038516600081815260026020526040808220805460ff1916600190811790915560038054918201815583527fc2575a0e9e593c00f959f8c92f12db2869c3395a3b0502d05e2516446f71f85b01805473ffffffffffffffffffffffffffffffffffffffff191684179055517ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d9190a25050505050565b600080805b600354811015610c7a5760008481526001602052604081206003805491929184908110610c2957fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190205460ff1615610c5d576001820191505b600454821415610c7257600192505050610c7d565b600101610c00565b50505b919050565b6000805b600354811015610ceb5760008381526001602052604081206003805491929184908110610caf57fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190205460ff1615610ce3576001820191505b600101610c86565b50919050565b6000602081815291815260409081902080546001808301546002808501805487516101009582161595909502600019011691909104601f81018890048802840188019096528583526001600160a01b0390931695909491929190830182828015610d9c5780601f10610d7157610100808354040283529160200191610d9c565b820191906000526020600020905b815481529060010190602001808311610d7f57829003601f168201915b5050506003909301549192505060ff1684565b60606003805480602002602001604051908101604052809291908181526020018280548015610e0757602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610de9575b5050505050905090565b606080600554604051908082528060200260200182016040528015610e40578160200160208202803883390190505b5090506000805b600554811015610ec157858015610e70575060008181526020819052604090206003015460ff16155b80610e945750848015610e94575060008181526020819052604090206003015460ff165b15610eb95780838381518110610ea657fe5b6020026020010181815250506001820191505b600101610e47565b878703604051908082528060200260200182016040528015610eed578160200160208202803883390190505b5093508790505b86811015610f3157828181518110610f0857fe5b60200260200101518489830381518110610f1e57fe5b6020908102919091010152600101610ef4565b505050949350505050565b606080600380549050604051908082528060200260200182016040528015610f6e578160200160208202803883390190505b5090506000805b6003548110156110315760008581526001602052604081206003805491929184908110610f9e57fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190205460ff16156110295760038181548110610fd857fe5b9060005260206000200160009054906101000a90046001600160a01b031683838151811061100257fe5b60200260200101906001600160a01b031690816001600160a01b0316815250506001820191505b600101610f75565b8160405190808252806020026020018201604052801561105b578160200160208202803883390190505b509350600090505b818110156110ab5782818151811061107757fe5b602002602001015184828151811061108b57fe5b6001600160a01b0390921660209283029190910190910152600101611063565b505050919050565b60055481565b3330146110c557600080fd5b60035481603282118015906110da5750818111155b80156110e557508015155b80156110f057508115155b6110f957600080fd5b60048390556040805184815290517fa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a9181900360200190a1505050565b3360008181526002602052604090205460ff1661115257600080fd5b60008281526020819052604090205482906001600160a01b031661117557600080fd5b60008381526001602090815260408083203380855292529091205484919060ff16156111a057600080fd5b6000858152600160208181526040808420338086529252808420805460ff1916909317909255905187927f4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef91a36111f6856113eb565b5050505050565b600061120a848484611601565b905061121581611136565b9392505050565b33301461122857600080fd5b60068190556040805182815290517fc71bdc6afaf9b1aa90a7078191d4fc1adf3bf680fca3183697df6b0dc226bca29181900360200190a150565b603281565b60045481565b33301461127a57600080fd5b6001600160a01b038216600090815260026020526040902054829060ff166112a157600080fd5b6001600160a01b038216600090815260026020526040902054829060ff16156112c957600080fd5b60005b60035481101561135157846001600160a01b0316600382815481106112ed57fe5b6000918252602090912001546001600160a01b0316141561134957836003828154811061131657fe5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b03160217905550611351565b6001016112cc565b506001600160a01b03808516600081815260026020526040808220805460ff1990811690915593871682528082208054909416600117909355915190917f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9091a26040516001600160a01b038416907ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d90600090a250505050565b3360008181526002602052604090205460ff1661140757600080fd5b60008281526001602090815260408083203380855292529091205483919060ff1661143157600080fd5b600084815260208190526040902060030154849060ff161561145257600080fd5b60008581526020819052604081209061146a87610bfb565b9050808061149d575060028083015460001961010060018316150201160415801561149d575061149d82600101546116ef565b156115f25760038201805460ff19166001179055806114c55760018201546008805490910190555b815460018084015460028086018054604080516020601f600019988516156101000298909801909316949094049586018290048202840182019052848352611571956001600160a01b03169492919083908301828280156115675780601f1061153c57610100808354040283529160200191611567565b820191906000526020600020905b81548152906001019060200180831161154a57829003601f168201915b5050505050611736565b156115a65760405187907f33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed7590600090a26115f2565b60405187907f526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b7923690600090a260038201805460ff19169055806115f2576001820154600880549190910390555b50505050505050565b60085481565b6000836001600160a01b03811661161757600080fd5b600554604080516080810182526001600160a01b0388811682526020808301898152838501898152600060608601819052878152808452959095208451815473ffffffffffffffffffffffffffffffffffffffff191694169390931783555160018301559251805194965091939092611697926002850192910190611782565b50606091909101516003909101805460ff191691151591909117905560058054600101905560405182907fc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e5190600090a2509392505050565b6000600754620151800142111561170a574260075560006008555b600654826008540111806117215750600854828101105b1561172e57506000610c7d565b506001919050565b6000806040516020840160008287838a8c6187965a03f198975050505050505050565b81548183558181111561177d5760008381526020902061177d918101908301611800565b505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106117c357805160ff19168380011785556117f0565b828001600101855582156117f0579182015b828111156117f05782518255916020019190600101906117d5565b506117fc929150611800565b5090565b610a5f91905b808211156117fc576000815560010161180656fea165627a7a723058207acaec3ee67f73ee2d04873233aab0e5e546ef7a696ceefb5c24406d6d0a6bd70029a165627a7a7230582017f977ecdb14a11d8b1868c93158173301fec0965a3f3d06ae40c73007b751f30029",
"sourceMap": "256:673:5:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;256:673:5;;;;;;;",
"deployedSourceMap": "256:673:5:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;256:673:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;183:47:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;183:47:0;-1:-1:-1;;;;;183:47:0;;:::i;:::-;;;;;;;;;;;;;;;;;;673:254:5;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;673:254:5;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;673:254:5;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;673:254:5;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;673:254:5;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;673:254:5;;-1:-1:-1;;673:254:5;;;-1:-1:-1;;;673:254:5;;;;:::i;:::-;;;;-1:-1:-1;;;;;673:254:5;;;;;;;;;;;;;;236:51:0;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;236:51:0;;;;;;;;:::i;493:157::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;493:157:0;-1:-1:-1;;;;;493:157:0;;:::i;:::-;;;;;;;;;;;;;;;;183:47;;;;;;;;;;;;;;;;:::o;673:254:5:-;781:14;861:7;870:9;881:11;828:65;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8:100;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;828:65:5;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;828:65:5;811:83;;904:16;913:6;904:8;:16::i;:::-;673:254;;;;;:::o;236:51:0:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;236:51:0;;-1:-1:-1;236:51:0;;-1:-1:-1;236:51:0:o;493:157::-;-1:-1:-1;;;;;613:23:0;586:4;613:23;;;:14;:23;;;;;:30;;493:157::o;814:235::-;-1:-1:-1;;;;;886:30:0;;:15;:30;;;;;;;;;;;:37;;-1:-1:-1;;886:37:0;919:4;886:37;;;;;;948:10;933:26;;;;;;;;;27:10:-1;;23:18;;;45:23;;933:46:0;;;;;;;;;-1:-1:-1;;933:46:0;;;;;994:48;;;;;;;;;;;;;;;;;;;;;;;;;814:235;:::o;256:673:5:-;;;;;;;;:::o",
"source": "pragma solidity ^0.5.8;\nimport \"./Factory.sol\";\nimport \"./MultiSigWalletWithDailyLimit.sol\";\n\n\n/// @title Multisignature wallet factory for daily limit version - Allows creation of multisig wallet.\n/// @author Stefan George - <stefan.george@consensys.net>\ncontract MultiSigWalletWithDailyLimitFactory is Factory {\n\n /*\n * Public functions\n */\n /// @dev Allows verified creation of multisignature wallet.\n /// @param _owners List of initial owners.\n /// @param _required Number of required confirmations.\n /// @param _dailyLimit Amount in wei, which can be withdrawn without confirmations on a daily basis.\n /// @return Returns wallet address.\n function create(address[] memory _owners, uint _required, uint _dailyLimit)\n public\n returns (address wallet)\n {\n wallet = address(new MultiSigWalletWithDailyLimit(_owners, _required, _dailyLimit));\n register(wallet);\n }\n}\n",
"sourcePath": "/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWalletWithDailyLimitFactory.sol",
"ast": {
"absolutePath": "/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWalletWithDailyLimitFactory.sol",
"exportedSymbols": {
"MultiSigWalletWithDailyLimitFactory": [
1398
]
},
"id": 1399,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1365,
"literals": [
"solidity",
"^",
"0.5",
".8"
],
"nodeType": "PragmaDirective",
"src": "0:23:5"
},
{
"absolutePath": "/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/Factory.sol",
"file": "./Factory.sol",
"id": 1366,
"nodeType": "ImportDirective",
"scope": 1399,
"sourceUnit": 57,
"src": "24:23:5",
"symbolAliases": [],
"unitAlias": ""
},
{
"absolutePath": "/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWalletWithDailyLimit.sol",
"file": "./MultiSigWalletWithDailyLimit.sol",
"id": 1367,
"nodeType": "ImportDirective",
"scope": 1399,
"sourceUnit": 1364,
"src": "48:44:5",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1368,
"name": "Factory",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 56,
"src": "304:7:5",
"typeDescriptions": {
"typeIdentifier": "t_contract$_Factory_$56",
"typeString": "contract Factory"
}
},
"id": 1369,
"nodeType": "InheritanceSpecifier",
"src": "304:7:5"
}
],
"contractDependencies": [
56,
1363
],
"contractKind": "contract",
"documentation": "@title Multisignature wallet factory for daily limit version - Allows creation of multisig wallet.\n @author Stefan George - <stefan.george@consensys.net>",
"fullyImplemented": true,
"id": 1398,
"linearizedBaseContracts": [
1398,
56
],
"name": "MultiSigWalletWithDailyLimitFactory",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 1396,
"nodeType": "Block",
"src": "801:126:5",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1390,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1381,
"name": "wallet",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1379,
"src": "811:6:5",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1385,
"name": "_owners",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1372,
"src": "861:7:5",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
"typeString": "address[] memory"
}
},
{
"argumentTypes": null,
"id": 1386,
"name": "_required",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1374,
"src": "870:9:5",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 1387,
"name": "_dailyLimit",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1376,
"src": "881:11:5",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
"typeString": "address[] memory"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 1384,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "NewExpression",
"src": "828:32:5",
"typeDescriptions": {
"typeIdentifier": "t_function_creation_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_contract$_MultiSigWalletWithDailyLimit_$1363_$",
"typeString": "function (address[] memory,uint256,uint256) returns (contract MultiSigWalletWithDailyLimit)"
},
"typeName": {
"contractScope": null,
"id": 1383,
"name": "MultiSigWalletWithDailyLimit",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1363,
"src": "832:28:5",
"typeDescriptions": {
"typeIdentifier": "t_contract$_MultiSigWalletWithDailyLimit_$1363",
"typeString": "contract MultiSigWalletWithDailyLimit"
}
}
},
"id": 1388,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "828:65:5",
"typeDescriptions": {
"typeIdentifier": "t_contract$_MultiSigWalletWithDailyLimit_$1363",
"typeString": "contract MultiSigWalletWithDailyLimit"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_contract$_MultiSigWalletWithDailyLimit_$1363",
"typeString": "contract MultiSigWalletWithDailyLimit"
}
],
"id": 1382,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "820:7:5",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_address_$",
"typeString": "type(address)"
},
"typeName": "address"
},
"id": 1389,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "820:74:5",
"typeDescriptions": {
"typeIdentifier": "t_address_payable",
"typeString": "address payable"
}
},
"src": "811:83:5",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 1391,
"nodeType": "ExpressionStatement",
"src": "811:83:5"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1393,
"name": "wallet",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1379,
"src": "913:6:5",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 1392,
"name": "register",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 55,
"src": "904:8:5",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
"typeString": "function (address)"
}
},
"id": 1394,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "904:16:5",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1395,
"nodeType": "ExpressionStatement",
"src": "904:16:5"
}
]
},
"documentation": "@dev Allows verified creation of multisignature wallet.\n @param _owners List of initial owners.\n @param _required Number of required confirmations.\n @param _dailyLimit Amount in wei, which can be withdrawn without confirmations on a daily basis.\n @return Returns wallet address.",
"id": 1397,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "create",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1377,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1372,
"name": "_owners",
"nodeType": "VariableDeclaration",
"scope": 1397,
"src": "689:24:5",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
"typeString": "address[]"
},
"typeName": {
"baseType": {
"id": 1370,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "689:7:5",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 1371,
"length": null,
"nodeType": "ArrayTypeName",
"src": "689:9:5",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
"typeString": "address[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1374,
"name": "_required",
"nodeType": "VariableDeclaration",
"scope": 1397,
"src": "715:14:5",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1373,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "715:4:5",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1376,
"name": "_dailyLimit",
"nodeType": "VariableDeclaration",
"scope": 1397,
"src": "731:16:5",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1375,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "731:4:5",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "688:60:5"
},
"returnParameters": {
"id": 1380,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1379,
"name": "wallet",
"nodeType": "VariableDeclaration",
"scope": 1397,
"src": "781:14:5",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1378,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "781:7:5",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "780:16:5"
},
"scope": 1398,
"src": "673:254:5",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
}
],
"scope": 1399,
"src": "256:673:5"
}
],
"src": "0:930:5"
},
"legacyAST": {
"absolutePath": "/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWalletWithDailyLimitFactory.sol",
"exportedSymbols": {
"MultiSigWalletWithDailyLimitFactory": [
1398
]
},
"id": 1399,
"nodeType": "SourceUnit",
"nodes": [
{
"id": 1365,
"literals": [
"solidity",
"^",
"0.5",
".8"
],
"nodeType": "PragmaDirective",
"src": "0:23:5"
},
{
"absolutePath": "/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/Factory.sol",
"file": "./Factory.sol",
"id": 1366,
"nodeType": "ImportDirective",
"scope": 1399,
"sourceUnit": 57,
"src": "24:23:5",
"symbolAliases": [],
"unitAlias": ""
},
{
"absolutePath": "/home/aznagy/work/gnomultisig/MultiSigWallet/contracts/MultiSigWalletWithDailyLimit.sol",
"file": "./MultiSigWalletWithDailyLimit.sol",
"id": 1367,
"nodeType": "ImportDirective",
"scope": 1399,
"sourceUnit": 1364,
"src": "48:44:5",
"symbolAliases": [],
"unitAlias": ""
},
{
"baseContracts": [
{
"arguments": null,
"baseName": {
"contractScope": null,
"id": 1368,
"name": "Factory",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 56,
"src": "304:7:5",
"typeDescriptions": {
"typeIdentifier": "t_contract$_Factory_$56",
"typeString": "contract Factory"
}
},
"id": 1369,
"nodeType": "InheritanceSpecifier",
"src": "304:7:5"
}
],
"contractDependencies": [
56,
1363
],
"contractKind": "contract",
"documentation": "@title Multisignature wallet factory for daily limit version - Allows creation of multisig wallet.\n @author Stefan George - <stefan.george@consensys.net>",
"fullyImplemented": true,
"id": 1398,
"linearizedBaseContracts": [
1398,
56
],
"name": "MultiSigWalletWithDailyLimitFactory",
"nodeType": "ContractDefinition",
"nodes": [
{
"body": {
"id": 1396,
"nodeType": "Block",
"src": "801:126:5",
"statements": [
{
"expression": {
"argumentTypes": null,
"id": 1390,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"leftHandSide": {
"argumentTypes": null,
"id": 1381,
"name": "wallet",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1379,
"src": "811:6:5",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"nodeType": "Assignment",
"operator": "=",
"rightHandSide": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1385,
"name": "_owners",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1372,
"src": "861:7:5",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
"typeString": "address[] memory"
}
},
{
"argumentTypes": null,
"id": 1386,
"name": "_required",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1374,
"src": "870:9:5",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
{
"argumentTypes": null,
"id": 1387,
"name": "_dailyLimit",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1376,
"src": "881:11:5",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
"typeString": "address[] memory"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
{
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
],
"id": 1384,
"isConstant": false,
"isLValue": false,
"isPure": false,
"lValueRequested": false,
"nodeType": "NewExpression",
"src": "828:32:5",
"typeDescriptions": {
"typeIdentifier": "t_function_creation_nonpayable$_t_array$_t_address_$dyn_memory_ptr_$_t_uint256_$_t_uint256_$returns$_t_contract$_MultiSigWalletWithDailyLimit_$1363_$",
"typeString": "function (address[] memory,uint256,uint256) returns (contract MultiSigWalletWithDailyLimit)"
},
"typeName": {
"contractScope": null,
"id": 1383,
"name": "MultiSigWalletWithDailyLimit",
"nodeType": "UserDefinedTypeName",
"referencedDeclaration": 1363,
"src": "832:28:5",
"typeDescriptions": {
"typeIdentifier": "t_contract$_MultiSigWalletWithDailyLimit_$1363",
"typeString": "contract MultiSigWalletWithDailyLimit"
}
}
},
"id": 1388,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "828:65:5",
"typeDescriptions": {
"typeIdentifier": "t_contract$_MultiSigWalletWithDailyLimit_$1363",
"typeString": "contract MultiSigWalletWithDailyLimit"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_contract$_MultiSigWalletWithDailyLimit_$1363",
"typeString": "contract MultiSigWalletWithDailyLimit"
}
],
"id": 1382,
"isConstant": false,
"isLValue": false,
"isPure": true,
"lValueRequested": false,
"nodeType": "ElementaryTypeNameExpression",
"src": "820:7:5",
"typeDescriptions": {
"typeIdentifier": "t_type$_t_address_$",
"typeString": "type(address)"
},
"typeName": "address"
},
"id": 1389,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "typeConversion",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "820:74:5",
"typeDescriptions": {
"typeIdentifier": "t_address_payable",
"typeString": "address payable"
}
},
"src": "811:83:5",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 1391,
"nodeType": "ExpressionStatement",
"src": "811:83:5"
},
{
"expression": {
"argumentTypes": null,
"arguments": [
{
"argumentTypes": null,
"id": 1393,
"name": "wallet",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 1379,
"src": "913:6:5",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
}
],
"expression": {
"argumentTypes": [
{
"typeIdentifier": "t_address",
"typeString": "address"
}
],
"id": 1392,
"name": "register",
"nodeType": "Identifier",
"overloadedDeclarations": [],
"referencedDeclaration": 55,
"src": "904:8:5",
"typeDescriptions": {
"typeIdentifier": "t_function_internal_nonpayable$_t_address_$returns$__$",
"typeString": "function (address)"
}
},
"id": 1394,
"isConstant": false,
"isLValue": false,
"isPure": false,
"kind": "functionCall",
"lValueRequested": false,
"names": [],
"nodeType": "FunctionCall",
"src": "904:16:5",
"typeDescriptions": {
"typeIdentifier": "t_tuple$__$",
"typeString": "tuple()"
}
},
"id": 1395,
"nodeType": "ExpressionStatement",
"src": "904:16:5"
}
]
},
"documentation": "@dev Allows verified creation of multisignature wallet.\n @param _owners List of initial owners.\n @param _required Number of required confirmations.\n @param _dailyLimit Amount in wei, which can be withdrawn without confirmations on a daily basis.\n @return Returns wallet address.",
"id": 1397,
"implemented": true,
"kind": "function",
"modifiers": [],
"name": "create",
"nodeType": "FunctionDefinition",
"parameters": {
"id": 1377,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1372,
"name": "_owners",
"nodeType": "VariableDeclaration",
"scope": 1397,
"src": "689:24:5",
"stateVariable": false,
"storageLocation": "memory",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
"typeString": "address[]"
},
"typeName": {
"baseType": {
"id": 1370,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "689:7:5",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"id": 1371,
"length": null,
"nodeType": "ArrayTypeName",
"src": "689:9:5",
"typeDescriptions": {
"typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
"typeString": "address[]"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1374,
"name": "_required",
"nodeType": "VariableDeclaration",
"scope": 1397,
"src": "715:14:5",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1373,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "715:4:5",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
},
{
"constant": false,
"id": 1376,
"name": "_dailyLimit",
"nodeType": "VariableDeclaration",
"scope": 1397,
"src": "731:16:5",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
},
"typeName": {
"id": 1375,
"name": "uint",
"nodeType": "ElementaryTypeName",
"src": "731:4:5",
"typeDescriptions": {
"typeIdentifier": "t_uint256",
"typeString": "uint256"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "688:60:5"
},
"returnParameters": {
"id": 1380,
"nodeType": "ParameterList",
"parameters": [
{
"constant": false,
"id": 1379,
"name": "wallet",
"nodeType": "VariableDeclaration",
"scope": 1397,
"src": "781:14:5",
"stateVariable": false,
"storageLocation": "default",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
},
"typeName": {
"id": 1378,
"name": "address",
"nodeType": "ElementaryTypeName",
"src": "781:7:5",
"stateMutability": "nonpayable",
"typeDescriptions": {
"typeIdentifier": "t_address",
"typeString": "address"
}
},
"value": null,
"visibility": "internal"
}
],
"src": "780:16:5"
},
"scope": 1398,
"src": "673:254:5",
"stateMutability": "nonpayable",
"superFunction": null,
"visibility": "public"
}
],
"scope": 1399,
"src": "256:673:5"
}
],
"src": "0:930:5"
},
"compiler": {
"name": "solc",
"version": "0.5.8+commit.23d335f2.Emscripten.clang"
},
"networks": {
"73799": {
"events": {},
"links": {},
"address": "0xA76bAb23973EFc2A456572aE6dc10991260Df3e3",
"transactionHash": "0xaeb527cc919a201765e85a7eee26887d8b3a5d09f60d20946f81969a78e0f786"
}
},
"schemaVersion": "3.0.11",
"updatedAt": "2019-06-26T13:53:00.879Z",
"devdoc": {
"author": "Stefan George - <stefan.george@consensys.net>",
"methods": {
"create(address[],uint256,uint256)": {
"details": "Allows verified creation of multisignature wallet.",
"params": {
"_dailyLimit": "Amount in wei, which can be withdrawn without confirmations on a daily basis.",
"_owners": "List of initial owners.",
"_required": "Number of required confirmations."
},
"return": "Returns wallet address."
},
"getInstantiationCount(address)": {
"details": "Returns number of instantiations by creator.",
"params": {
"creator": "Contract creator."
},
"return": "Returns number of instantiations by creator."
}
},
"title": "Multisignature wallet factory for daily limit version - Allows creation of multisig wallet."
},
"userdoc": {
"methods": {}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment