{
  "contractName": "MultiSigWalletWithDailyLimit",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "owners",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "removeOwner",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "revokeConfirmation",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "name": "isOwner",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "uint256"
        },
        {
          "name": "",
          "type": "address"
        }
      ],
      "name": "confirmations",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "calcMaxWithdraw",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "pending",
          "type": "bool"
        },
        {
          "name": "executed",
          "type": "bool"
        }
      ],
      "name": "getTransactionCount",
      "outputs": [
        {
          "name": "count",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "dailyLimit",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "lastDay",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "addOwner",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "isConfirmed",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "getConfirmationCount",
      "outputs": [
        {
          "name": "count",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "transactions",
      "outputs": [
        {
          "name": "destination",
          "type": "address"
        },
        {
          "name": "value",
          "type": "uint256"
        },
        {
          "name": "data",
          "type": "bytes"
        },
        {
          "name": "executed",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getOwners",
      "outputs": [
        {
          "name": "",
          "type": "address[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "from",
          "type": "uint256"
        },
        {
          "name": "to",
          "type": "uint256"
        },
        {
          "name": "pending",
          "type": "bool"
        },
        {
          "name": "executed",
          "type": "bool"
        }
      ],
      "name": "getTransactionIds",
      "outputs": [
        {
          "name": "_transactionIds",
          "type": "uint256[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "getConfirmations",
      "outputs": [
        {
          "name": "_confirmations",
          "type": "address[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "transactionCount",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_required",
          "type": "uint256"
        }
      ],
      "name": "changeRequirement",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "confirmTransaction",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "destination",
          "type": "address"
        },
        {
          "name": "value",
          "type": "uint256"
        },
        {
          "name": "data",
          "type": "bytes"
        }
      ],
      "name": "submitTransaction",
      "outputs": [
        {
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_dailyLimit",
          "type": "uint256"
        }
      ],
      "name": "changeDailyLimit",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "MAX_OWNER_COUNT",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "required",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "owner",
          "type": "address"
        },
        {
          "name": "newOwner",
          "type": "address"
        }
      ],
      "name": "replaceOwner",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "executeTransaction",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "spentToday",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "inputs": [
        {
          "name": "_owners",
          "type": "address[]"
        },
        {
          "name": "_required",
          "type": "uint256"
        },
        {
          "name": "_dailyLimit",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "payable": true,
      "stateMutability": "payable",
      "type": "fallback"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "dailyLimit",
          "type": "uint256"
        }
      ],
      "name": "DailyLimitChange",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "Confirmation",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": true,
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "Revocation",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "Submission",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "Execution",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "transactionId",
          "type": "uint256"
        }
      ],
      "name": "ExecutionFailure",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "sender",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "value",
          "type": "uint256"
        }
      ],
      "name": "Deposit",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "OwnerAddition",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "owner",
          "type": "address"
        }
      ],
      "name": "OwnerRemoval",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": false,
          "name": "required",
          "type": "uint256"
        }
      ],
      "name": "RequirementChange",
      "type": "event"
    }
  ],
  "bytecode": "0x606060405234156200001057600080fd5b60405162002616380380620026168339810160405280805182019190602001805190602001909190805190602001909190505082826000825182603282111580156200005c5750818111155b80156200006a575060008114155b801562000078575060008214155b15156200008457600080fd5b600092505b8451831015620001bf57600260008685815181101515620000a657fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015620001355750600085848151811015156200011257fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1614155b15156200014157600080fd5b60016002600087868151811015156200015657fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550828060010193505062000089565b8460039080519060200190620001d7929190620001f4565b5083600481905550505050505080600681905550505050620002c9565b82805482825590600052602060002090810192821562000270579160200282015b828111156200026f5782518260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055509160200191906001019062000215565b5b5090506200027f919062000283565b5090565b620002c691905b80821115620002c257600081816101000a81549073ffffffffffffffffffffffffffffffffffffffff0219169055506001016200028a565b5090565b90565b61233d80620002d96000396000f300606060405260043610610154576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063025e7c27146101ae578063173825d91461021157806320ea8d861461024a5780632f54bf6e1461026d5780633411c81c146102be5780634bc9fdc214610318578063547415251461034157806367eeba0c146103855780636b0c932d146103ae5780637065cb48146103d7578063784547a7146104105780638b51d13f1461044b5780639ace38c214610482578063a0e67e2b14610580578063a8abe69a146105ea578063b5dc40c314610681578063b77bf600146106f9578063ba51a6df14610722578063c01a8c8414610745578063c642747414610768578063cea0862114610801578063d74f8edd14610824578063dc8452cd1461084d578063e20056e614610876578063ee22610b146108ce578063f059cf2b146108f1575b60003411156101ac573373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a25b005b34156101b957600080fd5b6101cf600480803590602001909190505061091a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561021c57600080fd5b610248600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610959565b005b341561025557600080fd5b61026b6004808035906020019091905050610bf5565b005b341561027857600080fd5b6102a4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610d9d565b604051808215151515815260200191505060405180910390f35b34156102c957600080fd5b6102fe600480803590602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610dbd565b604051808215151515815260200191505060405180910390f35b341561032357600080fd5b61032b610dec565b6040518082815260200191505060405180910390f35b341561034c57600080fd5b61036f600480803515159060200190919080351515906020019091905050610e29565b6040518082815260200191505060405180910390f35b341561039057600080fd5b610398610ebb565b6040518082815260200191505060405180910390f35b34156103b957600080fd5b6103c1610ec1565b6040518082815260200191505060405180910390f35b34156103e257600080fd5b61040e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610ec7565b005b341561041b57600080fd5b61043160048080359060200190919050506110c9565b604051808215151515815260200191505060405180910390f35b341561045657600080fd5b61046c60048080359060200190919050506111af565b6040518082815260200191505060405180910390f35b341561048d57600080fd5b6104a3600480803590602001909190505061127b565b604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001806020018315151515815260200182810382528481815460018160011615610100020316600290048152602001915080546001816001161561010002031660029004801561056e5780601f106105435761010080835404028352916020019161056e565b820191906000526020600020905b81548152906001019060200180831161055157829003601f168201915b50509550505050505060405180910390f35b341561058b57600080fd5b6105936112d7565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156105d65780820151818401526020810190506105bb565b505050509050019250505060405180910390f35b34156105f557600080fd5b61062a60048080359060200190919080359060200190919080351515906020019091908035151590602001909190505061136b565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561066d578082015181840152602081019050610652565b505050509050019250505060405180910390f35b341561068c57600080fd5b6106a260048080359060200190919050506114c7565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156106e55780820151818401526020810190506106ca565b505050509050019250505060405180910390f35b341561070457600080fd5b61070c6116f1565b6040518082815260200191505060405180910390f35b341561072d57600080fd5b61074360048080359060200190919050506116f7565b005b341561075057600080fd5b61076660048080359060200190919050506117b1565b005b341561077357600080fd5b6107eb600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190505061198e565b6040518082815260200191505060405180910390f35b341561080c57600080fd5b61082260048080359060200190919050506119ad565b005b341561082f57600080fd5b610837611a28565b6040518082815260200191505060405180910390f35b341561085857600080fd5b610860611a2d565b6040518082815260200191505060405180910390f35b341561088157600080fd5b6108cc600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a33565b005b34156108d957600080fd5b6108ef6004808035906020019091905050611d4a565b005b34156108fc57600080fd5b610904612042565b6040518082815260200191505060405180910390f35b60038181548110151561092957fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561099557600080fd5b81600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156109ee57600080fd5b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600091505b600160038054905003821015610b76578273ffffffffffffffffffffffffffffffffffffffff16600383815481101515610a8157fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610b69576003600160038054905003815481101515610ae057fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600383815481101515610b1b57fe5b906000526020600020900160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b76565b8180600101925050610a4b565b6001600381818054905003915081610b8e91906121ec565b506003805490506004541115610bad57610bac6003805490506116f7565b5b8273ffffffffffffffffffffffffffffffffffffffff167f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9060405160405180910390a2505050565b33600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610c4e57600080fd5b81336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610cb957600080fd5b8360008082815260200190815260200160002060030160009054906101000a900460ff16151515610ce957600080fd5b60006001600087815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550843373ffffffffffffffffffffffffffffffffffffffff167ff6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e960405160405180910390a35050505050565b60026020528060005260406000206000915054906101000a900460ff1681565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006201518060075401421115610e07576006549050610e26565b6008546006541015610e1c5760009050610e26565b6008546006540390505b90565b600080600090505b600554811015610eb457838015610e68575060008082815260200190815260200160002060030160009054906101000a900460ff16155b80610e9b5750828015610e9a575060008082815260200190815260200160002060030160009054906101000a900460ff165b5b15610ea7576001820191505b8080600101915050610e31565b5092915050565b60065481565b60075481565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f0157600080fd5b80600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610f5b57600080fd5b8160008173ffffffffffffffffffffffffffffffffffffffff1614151515610f8257600080fd5b60016003805490500160045460328211158015610f9f5750818111155b8015610fac575060008114155b8015610fb9575060008214155b1515610fc457600080fd5b6001600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600380548060010182816110309190612218565b9160005260206000209001600087909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550508473ffffffffffffffffffffffffffffffffffffffff167ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d60405160405180910390a25050505050565b6000806000809150600090505b6003805490508110156111a75760016000858152602001908152602001600020600060038381548110151561110757fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611187576001820191505b60045482141561119a57600192506111a8565b80806001019150506110d6565b5b5050919050565b600080600090505b600380549050811015611275576001600084815260200190815260200160002060006003838154811015156111e857fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611268576001820191505b80806001019150506111b7565b50919050565b60006020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600101549080600201908060030160009054906101000a900460ff16905084565b6112df612244565b600380548060200260200160405190810160405280929190818152602001828054801561136157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611317575b5050505050905090565b611373612258565b61137b612258565b60008060055460405180591061138e5750595b9080825280602002602001820160405250925060009150600090505b60055481101561144a578580156113e1575060008082815260200190815260200160002060030160009054906101000a900460ff16155b806114145750848015611413575060008082815260200190815260200160002060030160009054906101000a900460ff165b5b1561143d5780838381518110151561142857fe5b90602001906020020181815250506001820191505b80806001019150506113aa565b87870360405180591061145a5750595b908082528060200260200182016040525093508790505b868110156114bc57828181518110151561148757fe5b90602001906020020151848983038151811015156114a157fe5b90602001906020020181815250508080600101915050611471565b505050949350505050565b6114cf612244565b6114d7612244565b6000806003805490506040518059106114ed5750595b9080825280602002602001820160405250925060009150600090505b60038054905081101561164c5760016000868152602001908152602001600020600060038381548110151561153a57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561163f576003818154811015156115c257fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683838151811015156115fc57fe5b9060200190602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506001820191505b8080600101915050611509565b8160405180591061165a5750595b90808252806020026020018201604052509350600090505b818110156116e957828181518110151561168857fe5b9060200190602002015184828151811015156116a057fe5b9060200190602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508080600101915050611672565b505050919050565b60055481565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561173157600080fd5b60038054905081603282111580156117495750818111155b8015611756575060008114155b8015611763575060008214155b151561176e57600080fd5b826004819055507fa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a836040518082815260200191505060405180910390a1505050565b33600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561180a57600080fd5b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561186657600080fd5b82336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156118d257600080fd5b600180600087815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550843373ffffffffffffffffffffffffffffffffffffffff167f4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef60405160405180910390a361198785611d4a565b5050505050565b600061199b848484612048565b90506119a6816117b1565b9392505050565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119e757600080fd5b806006819055507fc71bdc6afaf9b1aa90a7078191d4fc1adf3bf680fca3183697df6b0dc226bca2816040518082815260200191505060405180910390a150565b603281565b60045481565b60003073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a6f57600080fd5b82600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611ac857600080fd5b82600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611b2257600080fd5b600092505b600380549050831015611c0d578473ffffffffffffffffffffffffffffffffffffffff16600384815481101515611b5a57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611c005783600384815481101515611bb257fe5b906000526020600020900160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611c0d565b8280600101935050611b27565b6000600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508473ffffffffffffffffffffffffffffffffffffffff167f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9060405160405180910390a28373ffffffffffffffffffffffffffffffffffffffff167ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d60405160405180910390a25050505050565b60008033600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611da657600080fd5b83336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611e1157600080fd5b8560008082815260200190815260200160002060030160009054906101000a900460ff16151515611e4157600080fd5b6000808881526020019081526020016000209550611e5e876110c9565b94508480611e995750600086600201805460018160011615610100020316600290049050148015611e985750611e97866001015461219a565b5b5b156120395760018660030160006101000a81548160ff021916908315150217905550841515611ed75785600101546008600082825401925050819055505b8560000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168660010154876002016040518082805460018160011615610100020316600290048015611f805780601f10611f5557610100808354040283529160200191611f80565b820191906000526020600020905b815481529060010190602001808311611f6357829003601f168201915b505091505060006040518083038185876187965a03f19250505015611fd157867f33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed7560405160405180910390a2612038565b867f526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b7923660405160405180910390a260008660030160006101000a81548160ff0219169083151502179055508415156120375785600101546008600082825403925050819055505b5b5b50505050505050565b60085481565b60008360008173ffffffffffffffffffffffffffffffffffffffff161415151561207157600080fd5b60055491506080604051908101604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018581526020018481526020016000151581525060008084815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201908051906020019061213092919061226c565b5060608201518160030160006101000a81548160ff0219169083151502179055509050506001600560008282540192505081905550817fc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e5160405160405180910390a2509392505050565b600062015180600754014211156121bb574260078190555060006008819055505b600654826008540111806121d457506008548260085401105b156121e257600090506121e7565b600190505b919050565b8154818355818115116122135781836000526020600020918201910161221291906122ec565b5b505050565b81548183558181151161223f5781836000526020600020918201910161223e91906122ec565b5b505050565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106122ad57805160ff19168380011785556122db565b828001600101855582156122db579182015b828111156122da5782518255916020019190600101906122bf565b5b5090506122e891906122ec565b5090565b61230e91905b8082111561230a5760008160009055506001016122f2565b5090565b905600a165627a7a7230582008e5229aec4667b8b874e324d5dbd9743fc85f37176bf47ff5421a47b844a2520029",
  "deployedBytecode": "0x606060405260043610610154576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff168063025e7c27146101ae578063173825d91461021157806320ea8d861461024a5780632f54bf6e1461026d5780633411c81c146102be5780634bc9fdc214610318578063547415251461034157806367eeba0c146103855780636b0c932d146103ae5780637065cb48146103d7578063784547a7146104105780638b51d13f1461044b5780639ace38c214610482578063a0e67e2b14610580578063a8abe69a146105ea578063b5dc40c314610681578063b77bf600146106f9578063ba51a6df14610722578063c01a8c8414610745578063c642747414610768578063cea0862114610801578063d74f8edd14610824578063dc8452cd1461084d578063e20056e614610876578063ee22610b146108ce578063f059cf2b146108f1575b60003411156101ac573373ffffffffffffffffffffffffffffffffffffffff167fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c346040518082815260200191505060405180910390a25b005b34156101b957600080fd5b6101cf600480803590602001909190505061091a565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b341561021c57600080fd5b610248600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610959565b005b341561025557600080fd5b61026b6004808035906020019091905050610bf5565b005b341561027857600080fd5b6102a4600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610d9d565b604051808215151515815260200191505060405180910390f35b34156102c957600080fd5b6102fe600480803590602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610dbd565b604051808215151515815260200191505060405180910390f35b341561032357600080fd5b61032b610dec565b6040518082815260200191505060405180910390f35b341561034c57600080fd5b61036f600480803515159060200190919080351515906020019091905050610e29565b6040518082815260200191505060405180910390f35b341561039057600080fd5b610398610ebb565b6040518082815260200191505060405180910390f35b34156103b957600080fd5b6103c1610ec1565b6040518082815260200191505060405180910390f35b34156103e257600080fd5b61040e600480803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050610ec7565b005b341561041b57600080fd5b61043160048080359060200190919050506110c9565b604051808215151515815260200191505060405180910390f35b341561045657600080fd5b61046c60048080359060200190919050506111af565b6040518082815260200191505060405180910390f35b341561048d57600080fd5b6104a3600480803590602001909190505061127b565b604051808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001848152602001806020018315151515815260200182810382528481815460018160011615610100020316600290048152602001915080546001816001161561010002031660029004801561056e5780601f106105435761010080835404028352916020019161056e565b820191906000526020600020905b81548152906001019060200180831161055157829003601f168201915b50509550505050505060405180910390f35b341561058b57600080fd5b6105936112d7565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156105d65780820151818401526020810190506105bb565b505050509050019250505060405180910390f35b34156105f557600080fd5b61062a60048080359060200190919080359060200190919080351515906020019091908035151590602001909190505061136b565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561066d578082015181840152602081019050610652565b505050509050019250505060405180910390f35b341561068c57600080fd5b6106a260048080359060200190919050506114c7565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b838110156106e55780820151818401526020810190506106ca565b505050509050019250505060405180910390f35b341561070457600080fd5b61070c6116f1565b6040518082815260200191505060405180910390f35b341561072d57600080fd5b61074360048080359060200190919050506116f7565b005b341561075057600080fd5b61076660048080359060200190919050506117b1565b005b341561077357600080fd5b6107eb600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803590602001909190803590602001908201803590602001908080601f0160208091040260200160405190810160405280939291908181526020018383808284378201915050505050509190505061198e565b6040518082815260200191505060405180910390f35b341561080c57600080fd5b61082260048080359060200190919050506119ad565b005b341561082f57600080fd5b610837611a28565b6040518082815260200191505060405180910390f35b341561085857600080fd5b610860611a2d565b6040518082815260200191505060405180910390f35b341561088157600080fd5b6108cc600480803573ffffffffffffffffffffffffffffffffffffffff1690602001909190803573ffffffffffffffffffffffffffffffffffffffff16906020019091905050611a33565b005b34156108d957600080fd5b6108ef6004808035906020019091905050611d4a565b005b34156108fc57600080fd5b610904612042565b6040518082815260200191505060405180910390f35b60038181548110151561092957fe5b90600052602060002090016000915054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60003073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561099557600080fd5b81600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615156109ee57600080fd5b6000600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600091505b600160038054905003821015610b76578273ffffffffffffffffffffffffffffffffffffffff16600383815481101515610a8157fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415610b69576003600160038054905003815481101515610ae057fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600383815481101515610b1b57fe5b906000526020600020900160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b76565b8180600101925050610a4b565b6001600381818054905003915081610b8e91906121ec565b506003805490506004541115610bad57610bac6003805490506116f7565b5b8273ffffffffffffffffffffffffffffffffffffffff167f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9060405160405180910390a2505050565b33600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610c4e57600080fd5b81336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515610cb957600080fd5b8360008082815260200190815260200160002060030160009054906101000a900460ff16151515610ce957600080fd5b60006001600087815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550843373ffffffffffffffffffffffffffffffffffffffff167ff6a317157440607f36269043eb55f1287a5a19ba2216afeab88cd46cbcfb88e960405160405180910390a35050505050565b60026020528060005260406000206000915054906101000a900460ff1681565b60016020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b60006201518060075401421115610e07576006549050610e26565b6008546006541015610e1c5760009050610e26565b6008546006540390505b90565b600080600090505b600554811015610eb457838015610e68575060008082815260200190815260200160002060030160009054906101000a900460ff16155b80610e9b5750828015610e9a575060008082815260200190815260200160002060030160009054906101000a900460ff165b5b15610ea7576001820191505b8080600101915050610e31565b5092915050565b60065481565b60075481565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515610f0157600080fd5b80600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515610f5b57600080fd5b8160008173ffffffffffffffffffffffffffffffffffffffff1614151515610f8257600080fd5b60016003805490500160045460328211158015610f9f5750818111155b8015610fac575060008114155b8015610fb9575060008214155b1515610fc457600080fd5b6001600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600380548060010182816110309190612218565b9160005260206000209001600087909190916101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550508473ffffffffffffffffffffffffffffffffffffffff167ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d60405160405180910390a25050505050565b6000806000809150600090505b6003805490508110156111a75760016000858152602001908152602001600020600060038381548110151561110757fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611187576001820191505b60045482141561119a57600192506111a8565b80806001019150506110d6565b5b5050919050565b600080600090505b600380549050811015611275576001600084815260200190815260200160002060006003838154811015156111e857fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615611268576001820191505b80806001019150506111b7565b50919050565b60006020528060005260406000206000915090508060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169080600101549080600201908060030160009054906101000a900460ff16905084565b6112df612244565b600380548060200260200160405190810160405280929190818152602001828054801561136157602002820191906000526020600020905b8160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019060010190808311611317575b5050505050905090565b611373612258565b61137b612258565b60008060055460405180591061138e5750595b9080825280602002602001820160405250925060009150600090505b60055481101561144a578580156113e1575060008082815260200190815260200160002060030160009054906101000a900460ff16155b806114145750848015611413575060008082815260200190815260200160002060030160009054906101000a900460ff165b5b1561143d5780838381518110151561142857fe5b90602001906020020181815250506001820191505b80806001019150506113aa565b87870360405180591061145a5750595b908082528060200260200182016040525093508790505b868110156114bc57828181518110151561148757fe5b90602001906020020151848983038151811015156114a157fe5b90602001906020020181815250508080600101915050611471565b505050949350505050565b6114cf612244565b6114d7612244565b6000806003805490506040518059106114ed5750595b9080825280602002602001820160405250925060009150600090505b60038054905081101561164c5760016000868152602001908152602001600020600060038381548110151561153a57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561163f576003818154811015156115c257fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683838151811015156115fc57fe5b9060200190602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506001820191505b8080600101915050611509565b8160405180591061165a5750595b90808252806020026020018201604052509350600090505b818110156116e957828181518110151561168857fe5b9060200190602002015184828151811015156116a057fe5b9060200190602002019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508080600101915050611672565b505050919050565b60055481565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561173157600080fd5b60038054905081603282111580156117495750818111155b8015611756575060008114155b8015611763575060008214155b151561176e57600080fd5b826004819055507fa3f1ee9126a074d9326c682f561767f710e927faa811f7a99829d49dc421797a836040518082815260200191505060405180910390a1505050565b33600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151561180a57600080fd5b81600080600083815260200190815260200160002060000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415151561186657600080fd5b82336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515156118d257600080fd5b600180600087815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550843373ffffffffffffffffffffffffffffffffffffffff167f4a504a94899432a9846e1aa406dceb1bcfd538bb839071d49d1e5e23f5be30ef60405160405180910390a361198785611d4a565b5050505050565b600061199b848484612048565b90506119a6816117b1565b9392505050565b3073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415156119e757600080fd5b806006819055507fc71bdc6afaf9b1aa90a7078191d4fc1adf3bf680fca3183697df6b0dc226bca2816040518082815260200191505060405180910390a150565b603281565b60045481565b60003073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a6f57600080fd5b82600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611ac857600080fd5b82600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16151515611b2257600080fd5b600092505b600380549050831015611c0d578473ffffffffffffffffffffffffffffffffffffffff16600384815481101515611b5a57fe5b906000526020600020900160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611c005783600384815481101515611bb257fe5b906000526020600020900160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550611c0d565b8280600101935050611b27565b6000600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508473ffffffffffffffffffffffffffffffffffffffff167f8001553a916ef2f495d26a907cc54d96ed840d7bda71e73194bf5a9df7a76b9060405160405180910390a28373ffffffffffffffffffffffffffffffffffffffff167ff39e6e1eb0edcf53c221607b54b00cd28f3196fed0a24994dc308b8f611b682d60405160405180910390a25050505050565b60008033600260008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611da657600080fd5b83336001600083815260200190815260200160002060008273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161515611e1157600080fd5b8560008082815260200190815260200160002060030160009054906101000a900460ff16151515611e4157600080fd5b6000808881526020019081526020016000209550611e5e876110c9565b94508480611e995750600086600201805460018160011615610100020316600290049050148015611e985750611e97866001015461219a565b5b5b156120395760018660030160006101000a81548160ff021916908315150217905550841515611ed75785600101546008600082825401925050819055505b8560000160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168660010154876002016040518082805460018160011615610100020316600290048015611f805780601f10611f5557610100808354040283529160200191611f80565b820191906000526020600020905b815481529060010190602001808311611f6357829003601f168201915b505091505060006040518083038185876187965a03f19250505015611fd157867f33e13ecb54c3076d8e8bb8c2881800a4d972b792045ffae98fdf46df365fed7560405160405180910390a2612038565b867f526441bb6c1aba3c9a4a6ca1d6545da9c2333c8c48343ef398eb858d72b7923660405160405180910390a260008660030160006101000a81548160ff0219169083151502179055508415156120375785600101546008600082825403925050819055505b5b5b50505050505050565b60085481565b60008360008173ffffffffffffffffffffffffffffffffffffffff161415151561207157600080fd5b60055491506080604051908101604052808673ffffffffffffffffffffffffffffffffffffffff1681526020018581526020018481526020016000151581525060008084815260200190815260200160002060008201518160000160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060208201518160010155604082015181600201908051906020019061213092919061226c565b5060608201518160030160006101000a81548160ff0219169083151502179055509050506001600560008282540192505081905550817fc0ba8fe4b176c1714197d43b9cc6bcf797a4a7461c5fe8d0ef6e184ae7601e5160405160405180910390a2509392505050565b600062015180600754014211156121bb574260078190555060006008819055505b600654826008540111806121d457506008548260085401105b156121e257600090506121e7565b600190505b919050565b8154818355818115116122135781836000526020600020918201910161221291906122ec565b5b505050565b81548183558181151161223f5781836000526020600020918201910161223e91906122ec565b5b505050565b602060405190810160405280600081525090565b602060405190810160405280600081525090565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106122ad57805160ff19168380011785556122db565b828001600101855582156122db579182015b828111156122da5782518255916020019190600101906122bf565b5b5090506122e891906122ec565b5090565b61230e91905b8082111561230a5760008160009055506001016122f2565b5090565b905600a165627a7a7230582008e5229aec4667b8b874e324d5dbd9743fc85f37176bf47ff5421a47b844a2520029",
  "sourceMap": "227:3009:8:-;;;843:194;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;972:7;981:9;2961:6:7;2915:7;:14;2931:9;820:2;2254:10;:29;;:68;;;;;2312:10;2299:9;:23;;2254:68;:98;;;;;2351:1;2338:9;:14;;2254:98;:129;;;;;2382:1;2368:10;:15;;2254:129;2246:138;;;;;;;;2968:1;2961:8;;2956:151;2973:7;:14;2971:1;:16;2956:151;;;3017:7;:19;3025:7;3033:1;3025:10;;;;;;;;;;;;;;;;;;3017:19;;;;;;;;;;;;;;;;;;;;;;;;;3016:20;:39;;;;;3054:1;3040:7;3048:1;3040:10;;;;;;;;;;;;;;;;;;:15;;;;3016:39;3008:48;;;;;;;;3092:4;3070:7;:19;3078:7;3086:1;3078:10;;;;;;;;;;;;;;;;;;3070:19;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;2989:3;;;;;;;2956:151;;;3125:7;3116:6;:16;;;;;;;;;;;;:::i;:::-;;3153:9;3142:8;:20;;;;2816:353;;;;;1019:11:8;1006:10;:24;;;;843:194;;;227:3009;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;",
  "deployedSourceMap": "227:3009:8:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2521:1:7;2509:9;:13;2505:61;;;2544:10;2536:30;;;2556:9;2536:30;;;;;;;;;;;;;;;;;;2505:61;227:3009:8;1031:23:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3696:460;;;;;;;;;;;;;;;;;;;;;;;;;;;;6262:291;;;;;;;;;;;;;;;;;;;;;;;;;;985:40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;915:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2973:261:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9215:319:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;397:22:8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;425:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3296:277:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;7383:337;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8701:252;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;860:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9618:115;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;10836:676:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;9912:575:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;80:1;75:3;71;64:6;52:2;49:1;45:3;40:15;;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;;1086:28:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4978:207;;;;;;;;;;;;;;;;;;;;;;;;;;5794:344;;;;;;;;;;;;;;;;;;;;;;;;;;5444:244;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1170:162:8;;;;;;;;;;;;;;;;;;;;;;;;;;781:41:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1060:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4358:449;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1494:798:8;;;;;;;;;;;;;;;;;;;;;;;;;;450:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1031:23:7;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;3696:460::-;3844:6;1340:4;1318:27;;:10;:27;;;1310:36;;;;;;;;3786:5;1524:7;:14;1532:5;1524:14;;;;;;;;;;;;;;;;;;;;;;;;;1516:23;;;;;;;;3824:5;3807:7;:14;3815:5;3807:14;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;3851:1;3844:8;;3839:170;3872:1;3856:6;:13;;;;:17;3854:1;:19;3839:170;;;3909:5;3896:18;;:6;3903:1;3896:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;3892:117;;;3946:6;3969:1;3953:6;:13;;;;:17;3946:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;3934:6;3941:1;3934:9;;;;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;3989:5;;3892:117;3875:3;;;;;;;3839:170;;;4035:1;4018:6;:18;;;;;;;;;;;;;;:::i;:::-;;4061:6;:13;;;;4050:8;;:24;4046:74;;;4088:32;4106:6;:13;;;;4088:17;:32::i;:::-;4046:74;4143:5;4130:19;;;;;;;;;;;;1356:1;3696:460;;:::o;6262:291::-;6345:10;1524:7;:14;1532:5;1524:14;;;;;;;;;;;;;;;;;;;;;;;;;1516:23;;;;;;;;6375:13;6390:10;1769:13;:28;1783:13;1769:28;;;;;;;;;;;:35;1798:5;1769:35;;;;;;;;;;;;;;;;;;;;;;;;;1761:44;;;;;;;;6422:13;2025:12;:27;2038:13;2025:27;;;;;;;;;;;:36;;;;;;;;;;;;2024:37;2016:46;;;;;;;;6494:5;6451:13;:28;6465:13;6451:28;;;;;;;;;;;:40;6480:10;6451:40;;;;;;;;;;;;;;;;:48;;;;;;;;;;;;;;;;;;6532:13;6520:10;6509:37;;;;;;;;;;;;1815:1;1549;;6262:291;;:::o;985:40::-;;;;;;;;;;;;;;;;;;;;;;:::o;915:64::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2973:261:8:-;3049:4;3089:8;3079:7;;:18;3073:3;:24;3069:59;;;3118:10;;3111:17;;;;3069:59;3155:10;;3142;;:23;3138:49;;;3186:1;3179:8;;;;3138:49;3217:10;;3204;;:23;3197:30;;2973:261;;:::o;9215:319:7:-;9322:10;9353:6;9360:1;9353:8;;9348:179;9365:16;;9363:1;:18;9348:179;;;9407:7;:36;;;;;9419:12;:15;9432:1;9419:15;;;;;;;;;;;:24;;;;;;;;;;;;9418:25;9407:36;:92;;;;9463:8;:36;;;;;9475:12;:15;9488:1;9475:15;;;;;;;;;;;:24;;;;;;;;;;;;9463:36;9407:92;9400:127;;;9526:1;9517:10;;;;9400:127;9383:3;;;;;;;9348:179;;;9215:319;;;;;:::o;397:22:8:-;;;;:::o;425:19::-;;;;:::o;3296:277:7:-;1340:4;1318:27;;:10;:27;;;1310:36;;;;;;;;3389:5;1431:7;:14;1439:5;1431:14;;;;;;;;;;;;;;;;;;;;;;;;;1430:15;1422:24;;;;;;;;3412:5;2151:1;2139:8;:13;;;;2131:22;;;;;;;;3460:1;3444:6;:13;;;;:17;3463:8;;820:2;2254:10;:29;;:68;;;;;2312:10;2299:9;:23;;2254:68;:98;;;;;2351:1;2338:9;:14;;2254:98;:129;;;;;2382:1;2368:10;:15;;2254:129;2246:138;;;;;;;;3504:4;3487:7;:14;3495:5;3487:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;3518:6;:18;;;;;;;;;;;:::i;:::-;;;;;;;;;;3530:5;3518:18;;;;;;;;;;;;;;;;;;;;;;;3560:5;3546:20;;;;;;;;;;;;2163:1;;1456;1356;3296:277;:::o;7383:337::-;7473:4;7493:10;7522:6;7506:1;7493:14;;7529:1;7522:8;;7517:197;7534:6;:13;;;;7532:1;:15;7517:197;;;7572:13;:28;7586:13;7572:28;;;;;;;;;;;:39;7601:6;7608:1;7601:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;7572:39;;;;;;;;;;;;;;;;;;;;;;;;;7568:71;;;7638:1;7629:10;;;;7568:71;7666:8;;7657:5;:17;7653:50;;;7699:4;7692:11;;;;7653:50;7549:3;;;;;;;7517:197;;;7383:337;;;;;;:::o;8701:252::-;8800:10;8831:6;8838:1;8831:8;;8826:120;8843:6;:13;;;;8841:1;:15;8826:120;;;8879:13;:28;8893:13;8879:28;;;;;;;;;;;:39;8908:6;8915:1;8908:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;8879:39;;;;;;;;;;;;;;;;;;;;;;;;;8875:71;;;8945:1;8936:10;;;;8875:71;8858:3;;;;;;;8826:120;;;8701:252;;;;:::o;860:49::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;9618:115::-;9688:9;;:::i;:::-;9720:6;9713:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9618:115;:::o;10836:676::-;10961:22;;:::i;:::-;10999:32;;:::i;:::-;11072:10;11096:6;11045:16;;11034:28;;;;;;;;;;;;;;;;;;;;;;;;10999:63;;11085:1;11072:14;;11119:1;11117:3;;11112:250;11124:16;;11122:1;:18;11112:250;;;11166:7;:36;;;;;11178:12;:15;11191:1;11178:15;;;;;;;;;;;:24;;;;;;;;;;;;11177:25;11166:36;:92;;;;11222:8;:36;;;;;11234:12;:15;11247:1;11234:15;;;;;;;;;;;:24;;;;;;;;;;;;11222:36;11166:92;11159:203;;;11318:1;11290:18;11309:5;11290:25;;;;;;;;;;;;;;;;;:29;;;;;11346:1;11337:10;;;;11159:203;11142:3;;;;;;;11112:250;;;11405:4;11400:2;:9;11389:21;;;;;;;;;;;;;;;;;;;;;;;;11371:39;;11427:4;11425:6;;11420:85;11435:2;11433:1;:4;11420:85;;;11484:18;11503:1;11484:21;;;;;;;;;;;;;;;;;;11456:15;11476:4;11472:1;:8;11456:25;;;;;;;;;;;;;;;;;:49;;;;;11439:3;;;;;;;11420:85;;;10836:676;;;;;;;;;:::o;9912:575::-;10007:24;;:::i;:::-;10047:34;;:::i;:::-;10122:10;10146:6;10098;:13;;;;10084:28;;;;;;;;;;;;;;;;;;;;;;;;10047:65;;10135:1;10122:14;;10169:1;10167:3;;10162:186;10174:6;:13;;;;10172:1;:15;10162:186;;;10210:13;:28;10224:13;10210:28;;;;;;;;;;;:39;10239:6;10246:1;10239:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;10210:39;;;;;;;;;;;;;;;;;;;;;;;;;10206:142;;;10296:6;10303:1;10296:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;10269:17;10287:5;10269:24;;;;;;;;;;;;;;;;;:36;;;;;;;;;;;10332:1;10323:10;;;;10206:142;10189:3;;;;;;;10162:186;;;10388:5;10374:20;;;;;;;;;;;;;;;;;;;;;;;;10357:37;;10411:1;10409:3;;10404:76;10416:5;10414:1;:7;10404:76;;;10460:17;10478:1;10460:20;;;;;;;;;;;;;;;;;;10440:14;10455:1;10440:17;;;;;;;;;;;;;;;;;:40;;;;;;;;;;;10423:3;;;;;;;10404:76;;;9912:575;;;;;;:::o;1086:28::-;;;;:::o;4978:207::-;1340:4;1318:27;;:10;:27;;;1310:36;;;;;;;;5080:6;:13;;;;5095:9;820:2;2254:10;:29;;:68;;;;;2312:10;2299:9;:23;;2254:68;:98;;;;;2351:1;2338:9;:14;;2254:98;:129;;;;;2382:1;2368:10;:15;;2254:129;2246:138;;;;;;;;5131:9;5120:8;:20;;;;5150:28;5168:9;5150:28;;;;;;;;;;;;;;;;;;1356:1;;4978:207;:::o;5794:344::-;5877:10;1524:7;:14;1532:5;1524:14;;;;;;;;;;;;;;;;;;;;;;;;;1516:23;;;;;;;;5915:13;1671:1;1628:12;:27;1641:13;1628:27;;;;;;;;;;;:39;;;;;;;;;;;;:44;;;;1620:53;;;;;;;;5951:13;5966:10;1905:13;:28;1919:13;1905:28;;;;;;;;;;;:35;1934:5;1905:35;;;;;;;;;;;;;;;;;;;;;;;;;1904:36;1896:45;;;;;;;;6035:4;5992:13;:28;6006:13;5992:28;;;;;;;;;;;:40;6021:10;5992:40;;;;;;;;;;;;;;;;:47;;;;;;;;;;;;;;;;;;6074:13;6062:10;6049:39;;;;;;;;;;;;6098:33;6117:13;6098:18;:33::i;:::-;1683:1;;1549;5794:344;;:::o;5444:244::-;5548:18;5598:40;5613:11;5626:5;5633:4;5598:14;:40::i;:::-;5582:56;;5648:33;5667:13;5648:18;:33::i;:::-;5444:244;;;;;:::o;1170:162:8:-;1340:4:7;1318:27;;:10;:27;;;1310:36;;;;;;;;1275:11:8;1262:10;:24;;;;1296:29;1313:11;1296:29;;;;;;;;;;;;;;;;;;1170:162;:::o;781:41:7:-;820:2;781:41;:::o;1060:20::-;;;;:::o;4358:449::-;4529:6;1340:4;1318:27;;:10;:27;;;1310:36;;;;;;;;4467:5;1524:7;:14;1532:5;1524:14;;;;;;;;;;;;;;;;;;;;;;;;;1516:23;;;;;;;;4500:8;1431:7;:14;1439:5;1431:14;;;;;;;;;;;;;;;;;;;;;;;;;1430:15;1422:24;;;;;;;;4536:1;4529:8;;4524:149;4541:6;:13;;;;4539:1;:15;4524:149;;;4590:5;4577:18;;:6;4584:1;4577:9;;;;;;;;;;;;;;;;;;;;;;;;;;;;:18;;;4573:100;;;4627:8;4615:6;4622:1;4615:9;;;;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;4653:5;;4573:100;4556:3;;;;;;;4524:149;;;4699:5;4682:7;:14;4690:5;4682:14;;;;;;;;;;;;;;;;:22;;;;;;;;;;;;;;;;;;4734:4;4714:7;:17;4722:8;4714:17;;;;;;;;;;;;;;;;:24;;;;;;;;;;;;;;;;;;4761:5;4748:19;;;;;;;;;;;;4791:8;4777:23;;;;;;;;;;;;1549:1;1356;4358:449;;;:::o;1494:798:8:-;1683:23;1746:15;1577:10;1524:7:7;:14;1532:5;1524:14;;;;;;;;;;;;;;;;;;;;;;;;;1516:23;;;;;;;;1607:13:8;1622:10;1769:13:7;:28;1783:13;1769:28;;;;;;;;;;;:35;1798:5;1769:35;;;;;;;;;;;;;;;;;;;;;;;;;1761:44;;;;;;;;1654:13:8;2025:12:7;:27;2038:13;2025:27;;;;;;;;;;;:36;;;;;;;;;;;;2024:37;2016:46;;;;;;;;1709:12:8;:27;1722:13;1709:27;;;;;;;;;;;1683:53;;1764:26;1776:13;1764:11;:26::i;:::-;1746:44;;1804:10;:61;;;;1837:1;1818:3;:8;;:15;;;;;;;;;;;;;;;;:20;:47;;;;;1842:23;1855:3;:9;;;1842:12;:23::i;:::-;1818:47;1804:61;1800:486;;;1896:4;1881:3;:12;;;:19;;;;;;;;;;;;;;;;;;1919:10;1918:11;1914:56;;;1961:3;:9;;;1947:10;;:23;;;;;;;;;;;1914:56;1988:3;:15;;;;;;;;;;;;:20;;2015:3;:9;;;2026:3;:8;;1988:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1984:292;;;2063:13;2053:24;;;;;;;;;;1984:292;;;2131:13;2114:31;;;;;;;;;;2178:5;2163:3;:12;;;:20;;;;;;;;;;;;;;;;;;2206:10;2205:11;2201:60;;;2252:3;:9;;;2238:10;;:23;;;;;;;;;;;2201:60;1984:292;1800:486;1815:1:7;1549;;1494:798:8;;;;:::o;450:22::-;;;;:::o;8053:451:7:-;8185:18;8155:11;2151:1;2139:8;:13;;;;2131:22;;;;;;;;8235:16;;8219:32;;8291:140;;;;;;;;;8330:11;8291:140;;;;;;8362:5;8291:140;;;;8387:4;8291:140;;;;8415:5;8291:140;;;;;8261:12;:27;8274:13;8261:27;;;;;;;;;;;:170;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8461:1;8441:16;;:21;;;;;;;;;;;8483:13;8472:25;;;;;;;;;;8053:451;;;;;;:::o;2527:320:8:-;2596:4;2636:8;2626:7;;:18;2620:3;:24;2616:96;;;2670:3;2660:7;:13;;;;2700:1;2687:10;:14;;;;2616:96;2747:10;;2738:6;2725:10;;:19;:32;:68;;;;2783:10;;2774:6;2761:10;;:19;:32;2725:68;2721:98;;;2814:5;2807:12;;;;2721:98;2836:4;2829:11;;2527:320;;;;:::o;227:3009::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;:::o;:::-;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
  "source": "pragma solidity 0.4.18;\nimport \"./MultiSigWallet.sol\";\n\n\n/// @title Multisignature wallet with daily limit - Allows an owner to withdraw a daily limit without multisig.\n/// @author Stefan George - <stefan.george@consensys.net>\ncontract MultiSigWalletWithDailyLimit is MultiSigWallet {\n\n    /*\n     *  Events\n     */\n    event DailyLimitChange(uint dailyLimit);\n\n    /*\n     *  Storage\n     */\n    uint public dailyLimit;\n    uint public lastDay;\n    uint public spentToday;\n\n    /*\n     * Public functions\n     */\n    /// @dev Contract constructor sets initial owners, required number of confirmations and daily withdraw limit.\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    function MultiSigWalletWithDailyLimit(address[] _owners, uint _required, uint _dailyLimit)\n        public\n        MultiSigWallet(_owners, _required)\n    {\n        dailyLimit = _dailyLimit;\n    }\n\n    /// @dev Allows to change the daily limit. Transaction has to be sent by wallet.\n    /// @param _dailyLimit Amount in wei.\n    function changeDailyLimit(uint _dailyLimit)\n        public\n        onlyWallet\n    {\n        dailyLimit = _dailyLimit;\n        DailyLimitChange(_dailyLimit);\n    }\n\n    /// @dev Allows anyone to execute a confirmed transaction or ether withdraws until daily limit is reached.\n    /// @param transactionId Transaction ID.\n    function executeTransaction(uint transactionId)\n        public\n        ownerExists(msg.sender)\n        confirmed(transactionId, msg.sender)\n        notExecuted(transactionId)\n    {\n        Transaction storage txn = transactions[transactionId];\n        bool _confirmed = isConfirmed(transactionId);\n        if (_confirmed || txn.data.length == 0 && isUnderLimit(txn.value)) {\n            txn.executed = true;\n            if (!_confirmed)\n                spentToday += txn.value;\n            if (txn.destination.call.value(txn.value)(txn.data))\n                Execution(transactionId);\n            else {\n                ExecutionFailure(transactionId);\n                txn.executed = false;\n                if (!_confirmed)\n                    spentToday -= txn.value;\n            }\n        }\n    }\n\n    /*\n     * Internal functions\n     */\n    /// @dev Returns if amount is within daily limit and resets spentToday after one day.\n    /// @param amount Amount to withdraw.\n    /// @return Returns if amount is under daily limit.\n    function isUnderLimit(uint amount)\n        internal\n        returns (bool)\n    {\n        if (now > lastDay + 24 hours) {\n            lastDay = now;\n            spentToday = 0;\n        }\n        if (spentToday + amount > dailyLimit || spentToday + amount < spentToday)\n            return false;\n        return true;\n    }\n\n    /*\n     * Web3 call functions\n     */\n    /// @dev Returns maximum withdraw amount.\n    /// @return Returns amount.\n    function calcMaxWithdraw()\n        public\n        constant\n        returns (uint)\n    {\n        if (now > lastDay + 24 hours)\n            return dailyLimit;\n        if (dailyLimit < spentToday)\n            return 0;\n        return dailyLimit - spentToday;\n    }\n}",
  "sourcePath": "/Users/lucaban/.ghq/github.com/DRI-network/RICO/contracts/MultiSigWalletWithDailyLimit.sol",
  "ast": {
    "attributes": {
      "absolutePath": "/Users/lucaban/.ghq/github.com/DRI-network/RICO/contracts/MultiSigWalletWithDailyLimit.sol",
      "exportedSymbols": {
        "MultiSigWalletWithDailyLimit": [
          2061
        ]
      }
    },
    "children": [
      {
        "attributes": {
          "literals": [
            "solidity",
            "0.4",
            ".18"
          ]
        },
        "id": 1857,
        "name": "PragmaDirective",
        "src": "0:23:8"
      },
      {
        "attributes": {
          "SourceUnit": 1856,
          "absolutePath": "/Users/lucaban/.ghq/github.com/DRI-network/RICO/contracts/MultiSigWallet.sol",
          "file": "./MultiSigWallet.sol",
          "scope": 2062,
          "symbolAliases": [
            null
          ],
          "unitAlias": ""
        },
        "id": 1858,
        "name": "ImportDirective",
        "src": "24:30:8"
      },
      {
        "attributes": {
          "contractDependencies": [
            1855
          ],
          "contractKind": "contract",
          "documentation": "@title Multisignature wallet with daily limit - Allows an owner to withdraw a daily limit without multisig.\n @author Stefan George - <stefan.george@consensys.net>",
          "fullyImplemented": true,
          "linearizedBaseContracts": [
            2061,
            1855
          ],
          "name": "MultiSigWalletWithDailyLimit",
          "scope": 2062
        },
        "children": [
          {
            "attributes": {
              "arguments": [
                null
              ]
            },
            "children": [
              {
                "attributes": {
                  "contractScope": null,
                  "name": "MultiSigWallet",
                  "referencedDeclaration": 1855,
                  "type": "contract MultiSigWallet"
                },
                "id": 1859,
                "name": "UserDefinedTypeName",
                "src": "268:14:8"
              }
            ],
            "id": 1860,
            "name": "InheritanceSpecifier",
            "src": "268:14:8"
          },
          {
            "attributes": {
              "anonymous": false,
              "name": "DailyLimitChange"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "indexed": false,
                      "name": "dailyLimit",
                      "scope": 1864,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 1861,
                        "name": "ElementaryTypeName",
                        "src": "343:4:8"
                      }
                    ],
                    "id": 1862,
                    "name": "VariableDeclaration",
                    "src": "343:15:8"
                  }
                ],
                "id": 1863,
                "name": "ParameterList",
                "src": "342:17:8"
              }
            ],
            "id": 1864,
            "name": "EventDefinition",
            "src": "320:40:8"
          },
          {
            "attributes": {
              "constant": false,
              "name": "dailyLimit",
              "scope": 2061,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "uint256",
              "value": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "name": "uint",
                  "type": "uint256"
                },
                "id": 1865,
                "name": "ElementaryTypeName",
                "src": "397:4:8"
              }
            ],
            "id": 1866,
            "name": "VariableDeclaration",
            "src": "397:22:8"
          },
          {
            "attributes": {
              "constant": false,
              "name": "lastDay",
              "scope": 2061,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "uint256",
              "value": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "name": "uint",
                  "type": "uint256"
                },
                "id": 1867,
                "name": "ElementaryTypeName",
                "src": "425:4:8"
              }
            ],
            "id": 1868,
            "name": "VariableDeclaration",
            "src": "425:19:8"
          },
          {
            "attributes": {
              "constant": false,
              "name": "spentToday",
              "scope": 2061,
              "stateVariable": true,
              "storageLocation": "default",
              "type": "uint256",
              "value": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "name": "uint",
                  "type": "uint256"
                },
                "id": 1869,
                "name": "ElementaryTypeName",
                "src": "450:4:8"
              }
            ],
            "id": 1870,
            "name": "VariableDeclaration",
            "src": "450:22:8"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": true,
              "name": "MultiSigWalletWithDailyLimit",
              "payable": false,
              "scope": 2061,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_owners",
                      "scope": 1889,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address[] memory",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "length": null,
                          "type": "address[] storage pointer"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "address",
                              "type": "address"
                            },
                            "id": 1871,
                            "name": "ElementaryTypeName",
                            "src": "881:7:8"
                          }
                        ],
                        "id": 1872,
                        "name": "ArrayTypeName",
                        "src": "881:9:8"
                      }
                    ],
                    "id": 1873,
                    "name": "VariableDeclaration",
                    "src": "881:17:8"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_required",
                      "scope": 1889,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 1874,
                        "name": "ElementaryTypeName",
                        "src": "900:4:8"
                      }
                    ],
                    "id": 1875,
                    "name": "VariableDeclaration",
                    "src": "900:14:8"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_dailyLimit",
                      "scope": 1889,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 1876,
                        "name": "ElementaryTypeName",
                        "src": "916:4:8"
                      }
                    ],
                    "id": 1877,
                    "name": "VariableDeclaration",
                    "src": "916:16:8"
                  }
                ],
                "id": 1878,
                "name": "ParameterList",
                "src": "880:53:8"
              },
              {
                "attributes": {
                  "parameters": [
                    null
                  ]
                },
                "children": [],
                "id": 1883,
                "name": "ParameterList",
                "src": "996:0:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 1855,
                      "type": "type(contract MultiSigWallet)",
                      "value": "MultiSigWallet"
                    },
                    "id": 1879,
                    "name": "Identifier",
                    "src": "957:14:8"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 1873,
                      "type": "address[] memory",
                      "value": "_owners"
                    },
                    "id": 1880,
                    "name": "Identifier",
                    "src": "972:7:8"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 1875,
                      "type": "uint256",
                      "value": "_required"
                    },
                    "id": 1881,
                    "name": "Identifier",
                    "src": "981:9:8"
                  }
                ],
                "id": 1882,
                "name": "ModifierInvocation",
                "src": "957:34:8"
              },
              {
                "children": [
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "=",
                          "type": "uint256"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1866,
                              "type": "uint256",
                              "value": "dailyLimit"
                            },
                            "id": 1884,
                            "name": "Identifier",
                            "src": "1006:10:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1877,
                              "type": "uint256",
                              "value": "_dailyLimit"
                            },
                            "id": 1885,
                            "name": "Identifier",
                            "src": "1019:11:8"
                          }
                        ],
                        "id": 1886,
                        "name": "Assignment",
                        "src": "1006:24:8"
                      }
                    ],
                    "id": 1887,
                    "name": "ExpressionStatement",
                    "src": "1006:24:8"
                  }
                ],
                "id": 1888,
                "name": "Block",
                "src": "996:41:8"
              }
            ],
            "id": 1889,
            "name": "FunctionDefinition",
            "src": "843:194:8"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": false,
              "name": "changeDailyLimit",
              "payable": false,
              "scope": 2061,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_dailyLimit",
                      "scope": 1905,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 1890,
                        "name": "ElementaryTypeName",
                        "src": "1196:4:8"
                      }
                    ],
                    "id": 1891,
                    "name": "VariableDeclaration",
                    "src": "1196:16:8"
                  }
                ],
                "id": 1892,
                "name": "ParameterList",
                "src": "1195:18:8"
              },
              {
                "attributes": {
                  "parameters": [
                    null
                  ]
                },
                "children": [],
                "id": 1895,
                "name": "ParameterList",
                "src": "1252:0:8"
              },
              {
                "attributes": {
                  "arguments": [
                    null
                  ]
                },
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 961,
                      "type": "modifier ()",
                      "value": "onlyWallet"
                    },
                    "id": 1893,
                    "name": "Identifier",
                    "src": "1237:10:8"
                  }
                ],
                "id": 1894,
                "name": "ModifierInvocation",
                "src": "1237:10:8"
              },
              {
                "children": [
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "=",
                          "type": "uint256"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1866,
                              "type": "uint256",
                              "value": "dailyLimit"
                            },
                            "id": 1896,
                            "name": "Identifier",
                            "src": "1262:10:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1891,
                              "type": "uint256",
                              "value": "_dailyLimit"
                            },
                            "id": 1897,
                            "name": "Identifier",
                            "src": "1275:11:8"
                          }
                        ],
                        "id": 1898,
                        "name": "Assignment",
                        "src": "1262:24:8"
                      }
                    ],
                    "id": 1899,
                    "name": "ExpressionStatement",
                    "src": "1262:24:8"
                  },
                  {
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "tuple()",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1864,
                              "type": "function (uint256)",
                              "value": "DailyLimitChange"
                            },
                            "id": 1900,
                            "name": "Identifier",
                            "src": "1296:16:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1891,
                              "type": "uint256",
                              "value": "_dailyLimit"
                            },
                            "id": 1901,
                            "name": "Identifier",
                            "src": "1313:11:8"
                          }
                        ],
                        "id": 1902,
                        "name": "FunctionCall",
                        "src": "1296:29:8"
                      }
                    ],
                    "id": 1903,
                    "name": "ExpressionStatement",
                    "src": "1296:29:8"
                  }
                ],
                "id": 1904,
                "name": "Block",
                "src": "1252:80:8"
              }
            ],
            "id": 1905,
            "name": "FunctionDefinition",
            "src": "1170:162:8"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": false,
              "name": "executeTransaction",
              "payable": false,
              "scope": 2061,
              "stateMutability": "nonpayable",
              "superFunction": 1505,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "transactionId",
                      "scope": 1997,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 1906,
                        "name": "ElementaryTypeName",
                        "src": "1522:4:8"
                      }
                    ],
                    "id": 1907,
                    "name": "VariableDeclaration",
                    "src": "1522:18:8"
                  }
                ],
                "id": 1908,
                "name": "ParameterList",
                "src": "1521:20:8"
              },
              {
                "attributes": {
                  "parameters": [
                    null
                  ]
                },
                "children": [],
                "id": 1921,
                "name": "ParameterList",
                "src": "1673:0:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 986,
                      "type": "modifier (address)",
                      "value": "ownerExists"
                    },
                    "id": 1909,
                    "name": "Identifier",
                    "src": "1565:11:8"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "member_name": "sender",
                      "referencedDeclaration": null,
                      "type": "address"
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "overloadedDeclarations": [
                            null
                          ],
                          "referencedDeclaration": 3767,
                          "type": "msg",
                          "value": "msg"
                        },
                        "id": 1910,
                        "name": "Identifier",
                        "src": "1577:3:8"
                      }
                    ],
                    "id": 1911,
                    "name": "MemberAccess",
                    "src": "1577:10:8"
                  }
                ],
                "id": 1912,
                "name": "ModifierInvocation",
                "src": "1565:23:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 1017,
                      "type": "modifier (uint256,address)",
                      "value": "confirmed"
                    },
                    "id": 1913,
                    "name": "Identifier",
                    "src": "1597:9:8"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 1907,
                      "type": "uint256",
                      "value": "transactionId"
                    },
                    "id": 1914,
                    "name": "Identifier",
                    "src": "1607:13:8"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "member_name": "sender",
                      "referencedDeclaration": null,
                      "type": "address"
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "overloadedDeclarations": [
                            null
                          ],
                          "referencedDeclaration": 3767,
                          "type": "msg",
                          "value": "msg"
                        },
                        "id": 1915,
                        "name": "Identifier",
                        "src": "1622:3:8"
                      }
                    ],
                    "id": 1916,
                    "name": "MemberAccess",
                    "src": "1622:10:8"
                  }
                ],
                "id": 1917,
                "name": "ModifierInvocation",
                "src": "1597:36:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 1048,
                      "type": "modifier (uint256)",
                      "value": "notExecuted"
                    },
                    "id": 1918,
                    "name": "Identifier",
                    "src": "1642:11:8"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 1907,
                      "type": "uint256",
                      "value": "transactionId"
                    },
                    "id": 1919,
                    "name": "Identifier",
                    "src": "1654:13:8"
                  }
                ],
                "id": 1920,
                "name": "ModifierInvocation",
                "src": "1642:26:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "assignments": [
                        1923
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "txn",
                          "scope": 1997,
                          "stateVariable": false,
                          "storageLocation": "storage",
                          "type": "struct MultiSigWallet.Transaction storage pointer",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "contractScope": null,
                              "name": "Transaction",
                              "referencedDeclaration": 948,
                              "type": "struct MultiSigWallet.Transaction storage pointer"
                            },
                            "id": 1922,
                            "name": "UserDefinedTypeName",
                            "src": "1683:11:8"
                          }
                        ],
                        "id": 1923,
                        "name": "VariableDeclaration",
                        "src": "1683:23:8"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "type": "struct MultiSigWallet.Transaction storage ref"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 922,
                              "type": "mapping(uint256 => struct MultiSigWallet.Transaction storage ref)",
                              "value": "transactions"
                            },
                            "id": 1924,
                            "name": "Identifier",
                            "src": "1709:12:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1907,
                              "type": "uint256",
                              "value": "transactionId"
                            },
                            "id": 1925,
                            "name": "Identifier",
                            "src": "1722:13:8"
                          }
                        ],
                        "id": 1926,
                        "name": "IndexAccess",
                        "src": "1709:27:8"
                      }
                    ],
                    "id": 1927,
                    "name": "VariableDeclarationStatement",
                    "src": "1683:53:8"
                  },
                  {
                    "attributes": {
                      "assignments": [
                        1929
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "_confirmed",
                          "scope": 1997,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "bool",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "bool",
                              "type": "bool"
                            },
                            "id": 1928,
                            "name": "ElementaryTypeName",
                            "src": "1746:4:8"
                          }
                        ],
                        "id": 1929,
                        "name": "VariableDeclaration",
                        "src": "1746:15:8"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "bool",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              ],
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1548,
                              "type": "function (uint256) view returns (bool)",
                              "value": "isConfirmed"
                            },
                            "id": 1930,
                            "name": "Identifier",
                            "src": "1764:11:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1907,
                              "type": "uint256",
                              "value": "transactionId"
                            },
                            "id": 1931,
                            "name": "Identifier",
                            "src": "1776:13:8"
                          }
                        ],
                        "id": 1932,
                        "name": "FunctionCall",
                        "src": "1764:26:8"
                      }
                    ],
                    "id": 1933,
                    "name": "VariableDeclarationStatement",
                    "src": "1746:44:8"
                  },
                  {
                    "attributes": {
                      "falseBody": null
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "||",
                          "type": "bool"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1929,
                              "type": "bool",
                              "value": "_confirmed"
                            },
                            "id": 1934,
                            "name": "Identifier",
                            "src": "1804:10:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_bool",
                                "typeString": "bool"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": "&&",
                              "type": "bool"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "==",
                                  "type": "bool"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "member_name": "length",
                                      "referencedDeclaration": null,
                                      "type": "uint256"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "member_name": "data",
                                          "referencedDeclaration": 945,
                                          "type": "bytes storage ref"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 1923,
                                              "type": "struct MultiSigWallet.Transaction storage pointer",
                                              "value": "txn"
                                            },
                                            "id": 1935,
                                            "name": "Identifier",
                                            "src": "1818:3:8"
                                          }
                                        ],
                                        "id": 1936,
                                        "name": "MemberAccess",
                                        "src": "1818:8:8"
                                      }
                                    ],
                                    "id": 1937,
                                    "name": "MemberAccess",
                                    "src": "1818:15:8"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "hexvalue": "30",
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "subdenomination": null,
                                      "token": "number",
                                      "type": "int_const 0",
                                      "value": "0"
                                    },
                                    "id": 1938,
                                    "name": "Literal",
                                    "src": "1837:1:8"
                                  }
                                ],
                                "id": 1939,
                                "name": "BinaryOperation",
                                "src": "1818:20:8"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "isStructConstructorCall": false,
                                  "lValueRequested": false,
                                  "names": [
                                    null
                                  ],
                                  "type": "bool",
                                  "type_conversion": false
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      ],
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 2036,
                                      "type": "function (uint256) returns (bool)",
                                      "value": "isUnderLimit"
                                    },
                                    "id": 1940,
                                    "name": "Identifier",
                                    "src": "1842:12:8"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "member_name": "value",
                                      "referencedDeclaration": 943,
                                      "type": "uint256"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 1923,
                                          "type": "struct MultiSigWallet.Transaction storage pointer",
                                          "value": "txn"
                                        },
                                        "id": 1941,
                                        "name": "Identifier",
                                        "src": "1855:3:8"
                                      }
                                    ],
                                    "id": 1942,
                                    "name": "MemberAccess",
                                    "src": "1855:9:8"
                                  }
                                ],
                                "id": 1943,
                                "name": "FunctionCall",
                                "src": "1842:23:8"
                              }
                            ],
                            "id": 1944,
                            "name": "BinaryOperation",
                            "src": "1818:47:8"
                          }
                        ],
                        "id": 1945,
                        "name": "BinaryOperation",
                        "src": "1804:61:8"
                      },
                      {
                        "children": [
                          {
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "=",
                                  "type": "bool"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": true,
                                      "member_name": "executed",
                                      "referencedDeclaration": 947,
                                      "type": "bool"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 1923,
                                          "type": "struct MultiSigWallet.Transaction storage pointer",
                                          "value": "txn"
                                        },
                                        "id": 1946,
                                        "name": "Identifier",
                                        "src": "1881:3:8"
                                      }
                                    ],
                                    "id": 1948,
                                    "name": "MemberAccess",
                                    "src": "1881:12:8"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "hexvalue": "74727565",
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "subdenomination": null,
                                      "token": "bool",
                                      "type": "bool",
                                      "value": "true"
                                    },
                                    "id": 1949,
                                    "name": "Literal",
                                    "src": "1896:4:8"
                                  }
                                ],
                                "id": 1950,
                                "name": "Assignment",
                                "src": "1881:19:8"
                              }
                            ],
                            "id": 1951,
                            "name": "ExpressionStatement",
                            "src": "1881:19:8"
                          },
                          {
                            "attributes": {
                              "falseBody": null
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "!",
                                  "prefix": true,
                                  "type": "bool"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 1929,
                                      "type": "bool",
                                      "value": "_confirmed"
                                    },
                                    "id": 1952,
                                    "name": "Identifier",
                                    "src": "1919:10:8"
                                  }
                                ],
                                "id": 1953,
                                "name": "UnaryOperation",
                                "src": "1918:11:8"
                              },
                              {
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "operator": "+=",
                                      "type": "uint256"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 1870,
                                          "type": "uint256",
                                          "value": "spentToday"
                                        },
                                        "id": 1954,
                                        "name": "Identifier",
                                        "src": "1947:10:8"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "member_name": "value",
                                          "referencedDeclaration": 943,
                                          "type": "uint256"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 1923,
                                              "type": "struct MultiSigWallet.Transaction storage pointer",
                                              "value": "txn"
                                            },
                                            "id": 1955,
                                            "name": "Identifier",
                                            "src": "1961:3:8"
                                          }
                                        ],
                                        "id": 1956,
                                        "name": "MemberAccess",
                                        "src": "1961:9:8"
                                      }
                                    ],
                                    "id": 1957,
                                    "name": "Assignment",
                                    "src": "1947:23:8"
                                  }
                                ],
                                "id": 1958,
                                "name": "ExpressionStatement",
                                "src": "1947:23:8"
                              }
                            ],
                            "id": 1959,
                            "name": "IfStatement",
                            "src": "1914:56:8"
                          },
                          {
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "isStructConstructorCall": false,
                                  "lValueRequested": false,
                                  "names": [
                                    null
                                  ],
                                  "type": "bool",
                                  "type_conversion": false
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": [
                                        {
                                          "typeIdentifier": "t_bytes_storage",
                                          "typeString": "bytes storage ref"
                                        }
                                      ],
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "isStructConstructorCall": false,
                                      "lValueRequested": false,
                                      "names": [
                                        null
                                      ],
                                      "type": "function () payable returns (bool)",
                                      "type_conversion": false
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "member_name": "value",
                                          "referencedDeclaration": null,
                                          "type": "function (uint256) returns (function () payable returns (bool))"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "member_name": "call",
                                              "referencedDeclaration": null,
                                              "type": "function () payable returns (bool)"
                                            },
                                            "children": [
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "isConstant": false,
                                                  "isLValue": true,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "member_name": "destination",
                                                  "referencedDeclaration": 941,
                                                  "type": "address"
                                                },
                                                "children": [
                                                  {
                                                    "attributes": {
                                                      "argumentTypes": null,
                                                      "overloadedDeclarations": [
                                                        null
                                                      ],
                                                      "referencedDeclaration": 1923,
                                                      "type": "struct MultiSigWallet.Transaction storage pointer",
                                                      "value": "txn"
                                                    },
                                                    "id": 1960,
                                                    "name": "Identifier",
                                                    "src": "1988:3:8"
                                                  }
                                                ],
                                                "id": 1961,
                                                "name": "MemberAccess",
                                                "src": "1988:15:8"
                                              }
                                            ],
                                            "id": 1962,
                                            "name": "MemberAccess",
                                            "src": "1988:20:8"
                                          }
                                        ],
                                        "id": 1963,
                                        "name": "MemberAccess",
                                        "src": "1988:26:8"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "member_name": "value",
                                          "referencedDeclaration": 943,
                                          "type": "uint256"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 1923,
                                              "type": "struct MultiSigWallet.Transaction storage pointer",
                                              "value": "txn"
                                            },
                                            "id": 1964,
                                            "name": "Identifier",
                                            "src": "2015:3:8"
                                          }
                                        ],
                                        "id": 1965,
                                        "name": "MemberAccess",
                                        "src": "2015:9:8"
                                      }
                                    ],
                                    "id": 1966,
                                    "name": "FunctionCall",
                                    "src": "1988:37:8"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "member_name": "data",
                                      "referencedDeclaration": 945,
                                      "type": "bytes storage ref"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 1923,
                                          "type": "struct MultiSigWallet.Transaction storage pointer",
                                          "value": "txn"
                                        },
                                        "id": 1967,
                                        "name": "Identifier",
                                        "src": "2026:3:8"
                                      }
                                    ],
                                    "id": 1968,
                                    "name": "MemberAccess",
                                    "src": "2026:8:8"
                                  }
                                ],
                                "id": 1969,
                                "name": "FunctionCall",
                                "src": "1988:47:8"
                              },
                              {
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "isStructConstructorCall": false,
                                      "lValueRequested": false,
                                      "names": [
                                        null
                                      ],
                                      "type": "tuple()",
                                      "type_conversion": false
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 893,
                                          "type": "function (uint256)",
                                          "value": "Execution"
                                        },
                                        "id": 1970,
                                        "name": "Identifier",
                                        "src": "2053:9:8"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 1907,
                                          "type": "uint256",
                                          "value": "transactionId"
                                        },
                                        "id": 1971,
                                        "name": "Identifier",
                                        "src": "2063:13:8"
                                      }
                                    ],
                                    "id": 1972,
                                    "name": "FunctionCall",
                                    "src": "2053:24:8"
                                  }
                                ],
                                "id": 1973,
                                "name": "ExpressionStatement",
                                "src": "2053:24:8"
                              },
                              {
                                "children": [
                                  {
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "isStructConstructorCall": false,
                                          "lValueRequested": false,
                                          "names": [
                                            null
                                          ],
                                          "type": "tuple()",
                                          "type_conversion": false
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": [
                                                {
                                                  "typeIdentifier": "t_uint256",
                                                  "typeString": "uint256"
                                                }
                                              ],
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 897,
                                              "type": "function (uint256)",
                                              "value": "ExecutionFailure"
                                            },
                                            "id": 1974,
                                            "name": "Identifier",
                                            "src": "2114:16:8"
                                          },
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 1907,
                                              "type": "uint256",
                                              "value": "transactionId"
                                            },
                                            "id": 1975,
                                            "name": "Identifier",
                                            "src": "2131:13:8"
                                          }
                                        ],
                                        "id": 1976,
                                        "name": "FunctionCall",
                                        "src": "2114:31:8"
                                      }
                                    ],
                                    "id": 1977,
                                    "name": "ExpressionStatement",
                                    "src": "2114:31:8"
                                  },
                                  {
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "operator": "=",
                                          "type": "bool"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": true,
                                              "member_name": "executed",
                                              "referencedDeclaration": 947,
                                              "type": "bool"
                                            },
                                            "children": [
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "overloadedDeclarations": [
                                                    null
                                                  ],
                                                  "referencedDeclaration": 1923,
                                                  "type": "struct MultiSigWallet.Transaction storage pointer",
                                                  "value": "txn"
                                                },
                                                "id": 1978,
                                                "name": "Identifier",
                                                "src": "2163:3:8"
                                              }
                                            ],
                                            "id": 1980,
                                            "name": "MemberAccess",
                                            "src": "2163:12:8"
                                          },
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "hexvalue": "66616c7365",
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": true,
                                              "lValueRequested": false,
                                              "subdenomination": null,
                                              "token": "bool",
                                              "type": "bool",
                                              "value": "false"
                                            },
                                            "id": 1981,
                                            "name": "Literal",
                                            "src": "2178:5:8"
                                          }
                                        ],
                                        "id": 1982,
                                        "name": "Assignment",
                                        "src": "2163:20:8"
                                      }
                                    ],
                                    "id": 1983,
                                    "name": "ExpressionStatement",
                                    "src": "2163:20:8"
                                  },
                                  {
                                    "attributes": {
                                      "falseBody": null
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "operator": "!",
                                          "prefix": true,
                                          "type": "bool"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 1929,
                                              "type": "bool",
                                              "value": "_confirmed"
                                            },
                                            "id": 1984,
                                            "name": "Identifier",
                                            "src": "2206:10:8"
                                          }
                                        ],
                                        "id": 1985,
                                        "name": "UnaryOperation",
                                        "src": "2205:11:8"
                                      },
                                      {
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "isConstant": false,
                                              "isLValue": false,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "operator": "-=",
                                              "type": "uint256"
                                            },
                                            "children": [
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "overloadedDeclarations": [
                                                    null
                                                  ],
                                                  "referencedDeclaration": 1870,
                                                  "type": "uint256",
                                                  "value": "spentToday"
                                                },
                                                "id": 1986,
                                                "name": "Identifier",
                                                "src": "2238:10:8"
                                              },
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "isConstant": false,
                                                  "isLValue": true,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "member_name": "value",
                                                  "referencedDeclaration": 943,
                                                  "type": "uint256"
                                                },
                                                "children": [
                                                  {
                                                    "attributes": {
                                                      "argumentTypes": null,
                                                      "overloadedDeclarations": [
                                                        null
                                                      ],
                                                      "referencedDeclaration": 1923,
                                                      "type": "struct MultiSigWallet.Transaction storage pointer",
                                                      "value": "txn"
                                                    },
                                                    "id": 1987,
                                                    "name": "Identifier",
                                                    "src": "2252:3:8"
                                                  }
                                                ],
                                                "id": 1988,
                                                "name": "MemberAccess",
                                                "src": "2252:9:8"
                                              }
                                            ],
                                            "id": 1989,
                                            "name": "Assignment",
                                            "src": "2238:23:8"
                                          }
                                        ],
                                        "id": 1990,
                                        "name": "ExpressionStatement",
                                        "src": "2238:23:8"
                                      }
                                    ],
                                    "id": 1991,
                                    "name": "IfStatement",
                                    "src": "2201:60:8"
                                  }
                                ],
                                "id": 1992,
                                "name": "Block",
                                "src": "2096:180:8"
                              }
                            ],
                            "id": 1993,
                            "name": "IfStatement",
                            "src": "1984:292:8"
                          }
                        ],
                        "id": 1994,
                        "name": "Block",
                        "src": "1867:419:8"
                      }
                    ],
                    "id": 1995,
                    "name": "IfStatement",
                    "src": "1800:486:8"
                  }
                ],
                "id": 1996,
                "name": "Block",
                "src": "1673:619:8"
              }
            ],
            "id": 1997,
            "name": "FunctionDefinition",
            "src": "1494:798:8"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "isUnderLimit",
              "payable": false,
              "scope": 2061,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "internal"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "amount",
                      "scope": 2036,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 1998,
                        "name": "ElementaryTypeName",
                        "src": "2549:4:8"
                      }
                    ],
                    "id": 1999,
                    "name": "VariableDeclaration",
                    "src": "2549:11:8"
                  }
                ],
                "id": 2000,
                "name": "ParameterList",
                "src": "2548:13:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 2036,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 2001,
                        "name": "ElementaryTypeName",
                        "src": "2596:4:8"
                      }
                    ],
                    "id": 2002,
                    "name": "VariableDeclaration",
                    "src": "2596:4:8"
                  }
                ],
                "id": 2003,
                "name": "ParameterList",
                "src": "2595:6:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "falseBody": null
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": ">",
                          "type": "bool"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3769,
                              "type": "uint256",
                              "value": "now"
                            },
                            "id": 2004,
                            "name": "Identifier",
                            "src": "2620:3:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": "+",
                              "type": "uint256"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 1868,
                                  "type": "uint256",
                                  "value": "lastDay"
                                },
                                "id": 2005,
                                "name": "Identifier",
                                "src": "2626:7:8"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "hexvalue": "3234",
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "subdenomination": "hours",
                                  "token": "number",
                                  "type": "int_const 86400",
                                  "value": "24"
                                },
                                "id": 2006,
                                "name": "Literal",
                                "src": "2636:8:8"
                              }
                            ],
                            "id": 2007,
                            "name": "BinaryOperation",
                            "src": "2626:18:8"
                          }
                        ],
                        "id": 2008,
                        "name": "BinaryOperation",
                        "src": "2620:24:8"
                      },
                      {
                        "children": [
                          {
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "=",
                                  "type": "uint256"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 1868,
                                      "type": "uint256",
                                      "value": "lastDay"
                                    },
                                    "id": 2009,
                                    "name": "Identifier",
                                    "src": "2660:7:8"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 3769,
                                      "type": "uint256",
                                      "value": "now"
                                    },
                                    "id": 2010,
                                    "name": "Identifier",
                                    "src": "2670:3:8"
                                  }
                                ],
                                "id": 2011,
                                "name": "Assignment",
                                "src": "2660:13:8"
                              }
                            ],
                            "id": 2012,
                            "name": "ExpressionStatement",
                            "src": "2660:13:8"
                          },
                          {
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "=",
                                  "type": "uint256"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 1870,
                                      "type": "uint256",
                                      "value": "spentToday"
                                    },
                                    "id": 2013,
                                    "name": "Identifier",
                                    "src": "2687:10:8"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "hexvalue": "30",
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "subdenomination": null,
                                      "token": "number",
                                      "type": "int_const 0",
                                      "value": "0"
                                    },
                                    "id": 2014,
                                    "name": "Literal",
                                    "src": "2700:1:8"
                                  }
                                ],
                                "id": 2015,
                                "name": "Assignment",
                                "src": "2687:14:8"
                              }
                            ],
                            "id": 2016,
                            "name": "ExpressionStatement",
                            "src": "2687:14:8"
                          }
                        ],
                        "id": 2017,
                        "name": "Block",
                        "src": "2646:66:8"
                      }
                    ],
                    "id": 2018,
                    "name": "IfStatement",
                    "src": "2616:96:8"
                  },
                  {
                    "attributes": {
                      "falseBody": null
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "||",
                          "type": "bool"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": ">",
                              "type": "bool"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "+",
                                  "type": "uint256"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 1870,
                                      "type": "uint256",
                                      "value": "spentToday"
                                    },
                                    "id": 2019,
                                    "name": "Identifier",
                                    "src": "2725:10:8"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 1999,
                                      "type": "uint256",
                                      "value": "amount"
                                    },
                                    "id": 2020,
                                    "name": "Identifier",
                                    "src": "2738:6:8"
                                  }
                                ],
                                "id": 2021,
                                "name": "BinaryOperation",
                                "src": "2725:19:8"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 1866,
                                  "type": "uint256",
                                  "value": "dailyLimit"
                                },
                                "id": 2022,
                                "name": "Identifier",
                                "src": "2747:10:8"
                              }
                            ],
                            "id": 2023,
                            "name": "BinaryOperation",
                            "src": "2725:32:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": "<",
                              "type": "bool"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "commonType": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  },
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "+",
                                  "type": "uint256"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 1870,
                                      "type": "uint256",
                                      "value": "spentToday"
                                    },
                                    "id": 2024,
                                    "name": "Identifier",
                                    "src": "2761:10:8"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 1999,
                                      "type": "uint256",
                                      "value": "amount"
                                    },
                                    "id": 2025,
                                    "name": "Identifier",
                                    "src": "2774:6:8"
                                  }
                                ],
                                "id": 2026,
                                "name": "BinaryOperation",
                                "src": "2761:19:8"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 1870,
                                  "type": "uint256",
                                  "value": "spentToday"
                                },
                                "id": 2027,
                                "name": "Identifier",
                                "src": "2783:10:8"
                              }
                            ],
                            "id": 2028,
                            "name": "BinaryOperation",
                            "src": "2761:32:8"
                          }
                        ],
                        "id": 2029,
                        "name": "BinaryOperation",
                        "src": "2725:68:8"
                      },
                      {
                        "attributes": {
                          "functionReturnParameters": 2003
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "hexvalue": "66616c7365",
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "subdenomination": null,
                              "token": "bool",
                              "type": "bool",
                              "value": "false"
                            },
                            "id": 2030,
                            "name": "Literal",
                            "src": "2814:5:8"
                          }
                        ],
                        "id": 2031,
                        "name": "Return",
                        "src": "2807:12:8"
                      }
                    ],
                    "id": 2032,
                    "name": "IfStatement",
                    "src": "2721:98:8"
                  },
                  {
                    "attributes": {
                      "functionReturnParameters": 2003
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "hexvalue": "74727565",
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "subdenomination": null,
                          "token": "bool",
                          "type": "bool",
                          "value": "true"
                        },
                        "id": 2033,
                        "name": "Literal",
                        "src": "2836:4:8"
                      }
                    ],
                    "id": 2034,
                    "name": "Return",
                    "src": "2829:11:8"
                  }
                ],
                "id": 2035,
                "name": "Block",
                "src": "2606:241:8"
              }
            ],
            "id": 2036,
            "name": "FunctionDefinition",
            "src": "2527:320:8"
          },
          {
            "attributes": {
              "constant": true,
              "implemented": true,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "calcMaxWithdraw",
              "payable": false,
              "scope": 2061,
              "stateMutability": "view",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "attributes": {
                  "parameters": [
                    null
                  ]
                },
                "children": [],
                "id": 2037,
                "name": "ParameterList",
                "src": "2997:2:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 2060,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 2038,
                        "name": "ElementaryTypeName",
                        "src": "3049:4:8"
                      }
                    ],
                    "id": 2039,
                    "name": "VariableDeclaration",
                    "src": "3049:4:8"
                  }
                ],
                "id": 2040,
                "name": "ParameterList",
                "src": "3048:6:8"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "falseBody": null
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": ">",
                          "type": "bool"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 3769,
                              "type": "uint256",
                              "value": "now"
                            },
                            "id": 2041,
                            "name": "Identifier",
                            "src": "3073:3:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": "+",
                              "type": "uint256"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 1868,
                                  "type": "uint256",
                                  "value": "lastDay"
                                },
                                "id": 2042,
                                "name": "Identifier",
                                "src": "3079:7:8"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "hexvalue": "3234",
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "subdenomination": "hours",
                                  "token": "number",
                                  "type": "int_const 86400",
                                  "value": "24"
                                },
                                "id": 2043,
                                "name": "Literal",
                                "src": "3089:8:8"
                              }
                            ],
                            "id": 2044,
                            "name": "BinaryOperation",
                            "src": "3079:18:8"
                          }
                        ],
                        "id": 2045,
                        "name": "BinaryOperation",
                        "src": "3073:24:8"
                      },
                      {
                        "attributes": {
                          "functionReturnParameters": 2040
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1866,
                              "type": "uint256",
                              "value": "dailyLimit"
                            },
                            "id": 2046,
                            "name": "Identifier",
                            "src": "3118:10:8"
                          }
                        ],
                        "id": 2047,
                        "name": "Return",
                        "src": "3111:17:8"
                      }
                    ],
                    "id": 2048,
                    "name": "IfStatement",
                    "src": "3069:59:8"
                  },
                  {
                    "attributes": {
                      "falseBody": null
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "<",
                          "type": "bool"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1866,
                              "type": "uint256",
                              "value": "dailyLimit"
                            },
                            "id": 2049,
                            "name": "Identifier",
                            "src": "3142:10:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1870,
                              "type": "uint256",
                              "value": "spentToday"
                            },
                            "id": 2050,
                            "name": "Identifier",
                            "src": "3155:10:8"
                          }
                        ],
                        "id": 2051,
                        "name": "BinaryOperation",
                        "src": "3142:23:8"
                      },
                      {
                        "attributes": {
                          "functionReturnParameters": 2040
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "hexvalue": "30",
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": true,
                              "lValueRequested": false,
                              "subdenomination": null,
                              "token": "number",
                              "type": "int_const 0",
                              "value": "0"
                            },
                            "id": 2052,
                            "name": "Literal",
                            "src": "3186:1:8"
                          }
                        ],
                        "id": 2053,
                        "name": "Return",
                        "src": "3179:8:8"
                      }
                    ],
                    "id": 2054,
                    "name": "IfStatement",
                    "src": "3138:49:8"
                  },
                  {
                    "attributes": {
                      "functionReturnParameters": 2040
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "operator": "-",
                          "type": "uint256"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1866,
                              "type": "uint256",
                              "value": "dailyLimit"
                            },
                            "id": 2055,
                            "name": "Identifier",
                            "src": "3204:10:8"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 1870,
                              "type": "uint256",
                              "value": "spentToday"
                            },
                            "id": 2056,
                            "name": "Identifier",
                            "src": "3217:10:8"
                          }
                        ],
                        "id": 2057,
                        "name": "BinaryOperation",
                        "src": "3204:23:8"
                      }
                    ],
                    "id": 2058,
                    "name": "Return",
                    "src": "3197:30:8"
                  }
                ],
                "id": 2059,
                "name": "Block",
                "src": "3059:175:8"
              }
            ],
            "id": 2060,
            "name": "FunctionDefinition",
            "src": "2973:261:8"
          }
        ],
        "id": 2061,
        "name": "ContractDefinition",
        "src": "227:3009:8"
      }
    ],
    "id": 2062,
    "name": "SourceUnit",
    "src": "0:3236:8"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.18+commit.9cf6e910.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "1.0.1",
  "updatedAt": "2018-03-07T05:10:52.557Z"
}