{
  "contractName": "QuorumVote",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "name": "parameters",
      "outputs": [
        {
          "name": "reputationSystem",
          "type": "address"
        },
        {
          "name": "precReq",
          "type": "uint256"
        },
        {
          "name": "allowOwner",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_reputationSystem",
          "type": "address"
        },
        {
          "name": "_precReq",
          "type": "uint256"
        },
        {
          "name": "_allowOwner",
          "type": "bool"
        }
      ],
      "name": "getParametersHash",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "pure",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "voteInfo",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        },
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "name": "proposals",
      "outputs": [
        {
          "name": "owner",
          "type": "address"
        },
        {
          "name": "avatar",
          "type": "address"
        },
        {
          "name": "numOfChoices",
          "type": "uint256"
        },
        {
          "name": "executable",
          "type": "address"
        },
        {
          "name": "paramsHash",
          "type": "bytes32"
        },
        {
          "name": "totalVotes",
          "type": "uint256"
        },
        {
          "name": "open",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_vote",
          "type": "uint256"
        },
        {
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "ownerVote",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "cancelProposal",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_numOfChoices",
          "type": "uint256"
        },
        {
          "name": "_paramsHash",
          "type": "bytes32"
        },
        {
          "name": "_avatar",
          "type": "address"
        },
        {
          "name": "_executable",
          "type": "address"
        }
      ],
      "name": "propose",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "votesStatus",
      "outputs": [
        {
          "name": "votes",
          "type": "uint256[11]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "cancelVote",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_vote",
          "type": "uint256"
        }
      ],
      "name": "vote",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "getNumberOfChoices",
      "outputs": [
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_vote",
          "type": "uint256"
        },
        {
          "name": "_rep",
          "type": "uint256"
        },
        {
          "name": "",
          "type": "uint256"
        }
      ],
      "name": "voteWithSpecifiedAmounts",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "isVotable",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "execute",
      "outputs": [
        {
          "name": "",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_reputationSystem",
          "type": "address"
        },
        {
          "name": "_precReq",
          "type": "uint256"
        },
        {
          "name": "_allowOwner",
          "type": "bool"
        }
      ],
      "name": "setParameters",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "name": "_numOfChoices",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "_proposer",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "_paramsHash",
          "type": "bytes32"
        }
      ],
      "name": "LogNewProposal",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "LogCancelProposal",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "indexed": false,
          "name": "_decision",
          "type": "uint256"
        }
      ],
      "name": "LogExecuteProposal",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "name": "_voter",
          "type": "address"
        },
        {
          "indexed": false,
          "name": "_vote",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "_reputation",
          "type": "uint256"
        },
        {
          "indexed": false,
          "name": "_isOwnerVote",
          "type": "bool"
        }
      ],
      "name": "LogVoteProposal",
      "type": "event"
    },
    {
      "anonymous": false,
      "inputs": [
        {
          "indexed": true,
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "indexed": true,
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "LogCancelVoting",
      "type": "event"
    }
  ],
  "bytecode": "0x6060604052341561000f57600080fd5b61120c8061001e6000396000f3006060604052600436106100c15763ffffffff60e060020a6000350416630250680481146100c657806302a1cdaf1461010c578063119ce91b1461014557806332ed5b121461017f578063339e23d1146101df57806337376ca81461021857806388737b5e1461022e5780638fe23d1a146102595780639525c0cc146102a85780639ef1204c146102c0578063a003651d146102d9578063ac5d8745146102ef578063c08351061461030e578063e751f27114610324578063fed0d7df1461033a575b600080fd5b34156100d157600080fd5b6100dc600435610361565b604051600160a060020a039093168352602083019190915215156040808301919091526060909101905180910390f35b341561011757600080fd5b610133600160a060020a0360043516602435604435151561038f565b60405190815260200160405180910390f35b341561015057600080fd5b610167600435600160a060020a03602435166103f9565b60405191825260208201526040908101905180910390f35b341561018a57600080fd5b610195600435610458565b604051600160a060020a0397881681529587166020870152604080870195909552929095166060850152608084015260a083019390935291151560c082015260e001905180910390f35b34156101ea57600080fd5b610204600435602435600160a060020a03604435166104a7565b604051901515815260200160405180910390f35b341561022357600080fd5b61020460043561053e565b341561023957600080fd5b610133600435602435600160a060020a03604435811690606435166105fe565b341561026457600080fd5b61026f6004356107f5565b604051808261016080838360005b8381101561029557808201518382015260200161027d565b5050505090500191505060405180910390f35b34156102b357600080fd5b6102be600435610842565b005b34156102cb57600080fd5b610204600435602435610872565b34156102e457600080fd5b6101336004356108a9565b34156102fa57600080fd5b6102046004356024356044356064356108be565b341561031957600080fd5b6102046004356108f6565b341561032f57600080fd5b61020460043561090e565b341561034557600080fd5b610133600160a060020a03600435166024356044351515610c92565b600060208190529081526040902080546001820154600290920154600160a060020a03909116919060ff1683565b6000838383604051600160a060020a03939093166c01000000000000000000000000028352601483019190915215157f0100000000000000000000000000000000000000000000000000000000000000026034820152603501604051809103902090509392505050565b600080610404611145565b6000858152600160209081526040808320600160a060020a03881684526007019091529081902090805190810160405281548152600190910154602082015290508051816020015192509250509250929050565b60016020819052600091825260409091208054918101546002820154600383015460048401546005850154600890950154600160a060020a039687169694851695939490921692909160ff1687565b600083815260016020526040812054849033600160a060020a039081169116146104d057600080fd5b600085815260016020526040902060080154859060ff1615156104f257600080fd5b60008681526001602090815260408083206004015483529082905290206002015460ff1615156105255760009250610535565b6105328685876000610d47565b92505b50509392505050565b600081815260016020526040812054829033600160a060020a0390811691161461056757600080fd5b600083815260016020526040902060080154839060ff16151561058957600080fd5b60008481526001602090815260408083206004015483529082905290206002015460ff1615156105bc57600092506105f7565b6105c584610f76565b837fd06f0966987a6526e0c1291838668e5dbcaf062ae68baadf345ff3edd792e8b560405160405180910390a2600192505b5050919050565b60008061060961115c565b600086815260208190526040902054600160a060020a0316151561062c57600080fd5b60008711801561063d5750600a8711155b151561064857600080fd5b30600254604051600160a060020a03929092166c01000000000000000000000000028252601482015260340160405190819003902060028054600190810190915560408084018a905260808401899052600160a060020a03808916602080870191909152888216606087015233909116855260c085018390526000848152929052902090925081908151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0391909116178155602082015160018201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560408201518160020155606082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03929092169190911790556080820151600482015560a0820151816005015560c0820151600891909101805460ff191691151591909117905550817f82cc1e47a0fddd1b4b3576bd36d20b845eac0f69b7057cb0357a3cb4ce29cb65883389604051928352600160a060020a0390911660208301526040808301919091526060909101905180910390a25095945050505050565b6107fd611198565b6000828152600160205260408120905b600282015481116105f75760008181526006830160205260409020548382600b811061083557fe5b602002015260010161080d565b600081815260016020526040902060080154819060ff16151561086457600080fd5b61086e8233611011565b5050565b600082815260016020526040812060080154839060ff16151561089457600080fd5b6108a18433856000610d47565b949350505050565b60009081526001602052604090206002015490565b600084815260016020526040812060080154859060ff1615156108e057600080fd5b6108ec86338787610d47565b9695505050505050565b60009081526001602052604090206008015460ff1690565b600080600080600080600061092161115c565b600089815260016020526040902060080154899060ff16151561094357600080fd5b60008a8152600160209081526040808320600481015484529183905280832054919a50600160a060020a03909116916318160ddd9151602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156109ab57600080fd5b6102c65a03f115156109bc57600080fd5b505050604051805160048a01546000908152602081905260409020600101549098509650606490508688020488600501541115610c8057600192505b60028801548311610a4057600083815260068901602052604090205485901115610a35576000838152600689016020526040902054945091925082915b6001909201916109f8565b8760e060405190810160405290816000820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a031681526020016001820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a03168152602001600282015481526020016003820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a03168152602001600482015460001916600019168152602001600582015481526020016008820160009054906101000a900460ff1615151515815250509150600160008b60001916600019168152602001908152602001600020600080820160006101000a815490600160a060020a0302191690556001820160006101000a815490600160a060020a03021916905560028201600090556003820160006101000a815490600160a060020a030219169055600482016000905560058201600090556008820160006101000a81549060ff0219169055505089600019167f81be7b59f2640007c1101f52199758a7ea91009239bc8a7a2449472c02d221cc8560405190815260200160405180910390a28160600151600160a060020a031663310ce4e28b84602001518760006040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a0390911660248301526044820152606401602060405180830381600087803b1515610c5b57600080fd5b6102c65a03f11515610c6c57600080fd5b505050604051805190505060019850610c85565b600098505b5050505050505050919050565b60008060648411158015610ca65750600084115b1515610cb157600080fd5b610cbc85858561038f565b905060606040519081016040908152600160a060020a0387168252602080830187905285151582840152600084815290819052208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0391909116178155602082015181600101556040820151600291909101805460ff191691151591909117905550949350505050565b600080610d526111c0565b600087815260016020908152604080832060048101548452918390528083209194508291906060905190810160409081528254600160a060020a031682526001830154602083015260029283015460ff1615159082015290850154909350871115610dbc57600080fd5b8251600160a060020a031663db89c0448960006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610e1457600080fd5b6102c65a03f11515610e2557600080fd5b505050604051805192505085821015610e3d57600080fd5b5084801515610e495750805b600160a060020a038816600090815260078501602052604090206001015415610e7657610e768989611011565b6000878152600685016020526040902054610e9890829063ffffffff61111d16565b60008881526006860160205260409020556005840154610ebf90829063ffffffff61111d16565b60058501556040805190810160409081528882526020808301849052600160a060020a038b166000908152600788019091522081518155602082015160019091015550600160a060020a03808916908a907f98919cf2e7177b2b2794b7596166eb688e15f8422b46387aab412d792035c012908a9086903316851415604051928352602083019190915215156040808301919091526060909101905180910390a3610f698961090e565b9998505050505050505050565b6000818152600160205260408120905b60028201548111610faa576000818152600683016020526040812055600101610f86565b505060009081526001602081905260408220805473ffffffffffffffffffffffffffffffffffffffff19908116825591810180548316905560028101839055600381018054909216909155600481018290556005810191909155600801805460ff19169055565b600061101b611145565b6000848152600160209081526040808320600160a060020a03871684526007810190925291829020909350908051908101604052815481526001909101546020820190815290915061108d9051600684016000845181526020019081526020016000205461113390919063ffffffff16565b60068301600083518152602001908152602001600020819055506110c0816020015160058401549063ffffffff61113316565b6005830155600160a060020a03831660008181526007840160205260408082208281556001019190915585907f694e00fc5266ab4e93df364ff0161f5d7e3a035126b13d918755bfed6d8ab299905160405180910390a350505050565b60008282018381101561112c57fe5b9392505050565b60008282111561113f57fe5b50900390565b604080519081016040526000808252602082015290565b60e06040519081016040908152600080835260208301819052908201819052606082018190526080820181905260a0820181905260c082015290565b610160604051908101604052600b815b60008152602001906001900390816111a85790505090565b6060604051908101604090815260008083526020830181905290820152905600a165627a7a72305820f3954e5d91082437487c1c158e3bb3e3766e9254888f731bb3df857b3a9202ea0029",
  "deployedBytecode": "0x6060604052600436106100c15763ffffffff60e060020a6000350416630250680481146100c657806302a1cdaf1461010c578063119ce91b1461014557806332ed5b121461017f578063339e23d1146101df57806337376ca81461021857806388737b5e1461022e5780638fe23d1a146102595780639525c0cc146102a85780639ef1204c146102c0578063a003651d146102d9578063ac5d8745146102ef578063c08351061461030e578063e751f27114610324578063fed0d7df1461033a575b600080fd5b34156100d157600080fd5b6100dc600435610361565b604051600160a060020a039093168352602083019190915215156040808301919091526060909101905180910390f35b341561011757600080fd5b610133600160a060020a0360043516602435604435151561038f565b60405190815260200160405180910390f35b341561015057600080fd5b610167600435600160a060020a03602435166103f9565b60405191825260208201526040908101905180910390f35b341561018a57600080fd5b610195600435610458565b604051600160a060020a0397881681529587166020870152604080870195909552929095166060850152608084015260a083019390935291151560c082015260e001905180910390f35b34156101ea57600080fd5b610204600435602435600160a060020a03604435166104a7565b604051901515815260200160405180910390f35b341561022357600080fd5b61020460043561053e565b341561023957600080fd5b610133600435602435600160a060020a03604435811690606435166105fe565b341561026457600080fd5b61026f6004356107f5565b604051808261016080838360005b8381101561029557808201518382015260200161027d565b5050505090500191505060405180910390f35b34156102b357600080fd5b6102be600435610842565b005b34156102cb57600080fd5b610204600435602435610872565b34156102e457600080fd5b6101336004356108a9565b34156102fa57600080fd5b6102046004356024356044356064356108be565b341561031957600080fd5b6102046004356108f6565b341561032f57600080fd5b61020460043561090e565b341561034557600080fd5b610133600160a060020a03600435166024356044351515610c92565b600060208190529081526040902080546001820154600290920154600160a060020a03909116919060ff1683565b6000838383604051600160a060020a03939093166c01000000000000000000000000028352601483019190915215157f0100000000000000000000000000000000000000000000000000000000000000026034820152603501604051809103902090509392505050565b600080610404611145565b6000858152600160209081526040808320600160a060020a03881684526007019091529081902090805190810160405281548152600190910154602082015290508051816020015192509250509250929050565b60016020819052600091825260409091208054918101546002820154600383015460048401546005850154600890950154600160a060020a039687169694851695939490921692909160ff1687565b600083815260016020526040812054849033600160a060020a039081169116146104d057600080fd5b600085815260016020526040902060080154859060ff1615156104f257600080fd5b60008681526001602090815260408083206004015483529082905290206002015460ff1615156105255760009250610535565b6105328685876000610d47565b92505b50509392505050565b600081815260016020526040812054829033600160a060020a0390811691161461056757600080fd5b600083815260016020526040902060080154839060ff16151561058957600080fd5b60008481526001602090815260408083206004015483529082905290206002015460ff1615156105bc57600092506105f7565b6105c584610f76565b837fd06f0966987a6526e0c1291838668e5dbcaf062ae68baadf345ff3edd792e8b560405160405180910390a2600192505b5050919050565b60008061060961115c565b600086815260208190526040902054600160a060020a0316151561062c57600080fd5b60008711801561063d5750600a8711155b151561064857600080fd5b30600254604051600160a060020a03929092166c01000000000000000000000000028252601482015260340160405190819003902060028054600190810190915560408084018a905260808401899052600160a060020a03808916602080870191909152888216606087015233909116855260c085018390526000848152929052902090925081908151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0391909116178155602082015160018201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a039290921691909117905560408201518160020155606082015160038201805473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a03929092169190911790556080820151600482015560a0820151816005015560c0820151600891909101805460ff191691151591909117905550817f82cc1e47a0fddd1b4b3576bd36d20b845eac0f69b7057cb0357a3cb4ce29cb65883389604051928352600160a060020a0390911660208301526040808301919091526060909101905180910390a25095945050505050565b6107fd611198565b6000828152600160205260408120905b600282015481116105f75760008181526006830160205260409020548382600b811061083557fe5b602002015260010161080d565b600081815260016020526040902060080154819060ff16151561086457600080fd5b61086e8233611011565b5050565b600082815260016020526040812060080154839060ff16151561089457600080fd5b6108a18433856000610d47565b949350505050565b60009081526001602052604090206002015490565b600084815260016020526040812060080154859060ff1615156108e057600080fd5b6108ec86338787610d47565b9695505050505050565b60009081526001602052604090206008015460ff1690565b600080600080600080600061092161115c565b600089815260016020526040902060080154899060ff16151561094357600080fd5b60008a8152600160209081526040808320600481015484529183905280832054919a50600160a060020a03909116916318160ddd9151602001526040518163ffffffff1660e060020a028152600401602060405180830381600087803b15156109ab57600080fd5b6102c65a03f115156109bc57600080fd5b505050604051805160048a01546000908152602081905260409020600101549098509650606490508688020488600501541115610c8057600192505b60028801548311610a4057600083815260068901602052604090205485901115610a35576000838152600689016020526040902054945091925082915b6001909201916109f8565b8760e060405190810160405290816000820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a031681526020016001820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a03168152602001600282015481526020016003820160009054906101000a9004600160a060020a0316600160a060020a0316600160a060020a03168152602001600482015460001916600019168152602001600582015481526020016008820160009054906101000a900460ff1615151515815250509150600160008b60001916600019168152602001908152602001600020600080820160006101000a815490600160a060020a0302191690556001820160006101000a815490600160a060020a03021916905560028201600090556003820160006101000a815490600160a060020a030219169055600482016000905560058201600090556008820160006101000a81549060ff0219169055505089600019167f81be7b59f2640007c1101f52199758a7ea91009239bc8a7a2449472c02d221cc8560405190815260200160405180910390a28160600151600160a060020a031663310ce4e28b84602001518760006040516020015260405160e060020a63ffffffff86160281526004810193909352600160a060020a0390911660248301526044820152606401602060405180830381600087803b1515610c5b57600080fd5b6102c65a03f11515610c6c57600080fd5b505050604051805190505060019850610c85565b600098505b5050505050505050919050565b60008060648411158015610ca65750600084115b1515610cb157600080fd5b610cbc85858561038f565b905060606040519081016040908152600160a060020a0387168252602080830187905285151582840152600084815290819052208151815473ffffffffffffffffffffffffffffffffffffffff1916600160a060020a0391909116178155602082015181600101556040820151600291909101805460ff191691151591909117905550949350505050565b600080610d526111c0565b600087815260016020908152604080832060048101548452918390528083209194508291906060905190810160409081528254600160a060020a031682526001830154602083015260029283015460ff1615159082015290850154909350871115610dbc57600080fd5b8251600160a060020a031663db89c0448960006040516020015260405160e060020a63ffffffff8416028152600160a060020a039091166004820152602401602060405180830381600087803b1515610e1457600080fd5b6102c65a03f11515610e2557600080fd5b505050604051805192505085821015610e3d57600080fd5b5084801515610e495750805b600160a060020a038816600090815260078501602052604090206001015415610e7657610e768989611011565b6000878152600685016020526040902054610e9890829063ffffffff61111d16565b60008881526006860160205260409020556005840154610ebf90829063ffffffff61111d16565b60058501556040805190810160409081528882526020808301849052600160a060020a038b166000908152600788019091522081518155602082015160019091015550600160a060020a03808916908a907f98919cf2e7177b2b2794b7596166eb688e15f8422b46387aab412d792035c012908a9086903316851415604051928352602083019190915215156040808301919091526060909101905180910390a3610f698961090e565b9998505050505050505050565b6000818152600160205260408120905b60028201548111610faa576000818152600683016020526040812055600101610f86565b505060009081526001602081905260408220805473ffffffffffffffffffffffffffffffffffffffff19908116825591810180548316905560028101839055600381018054909216909155600481018290556005810191909155600801805460ff19169055565b600061101b611145565b6000848152600160209081526040808320600160a060020a03871684526007810190925291829020909350908051908101604052815481526001909101546020820190815290915061108d9051600684016000845181526020019081526020016000205461113390919063ffffffff16565b60068301600083518152602001908152602001600020819055506110c0816020015160058401549063ffffffff61113316565b6005830155600160a060020a03831660008181526007840160205260408082208281556001019190915585907f694e00fc5266ab4e93df364ff0161f5d7e3a035126b13d918755bfed6d8ab299905160405180910390a350505050565b60008282018381101561112c57fe5b9392505050565b60008282111561113f57fe5b50900390565b604080519081016040526000808252602082015290565b60e06040519081016040908152600080835260208301819052908201819052606082018190526080820181905260a0820181905260c082015290565b610160604051908101604052600b815b60008152602001906001900390816111a85790505090565b6060604051908101604090815260008083526020830181905290820152905600a165627a7a72305820f3954e5d91082437487c1c158e3bb3e3766e9254888f731bb3df857b3a9202ea0029",
  "sourceMap": "129:1269:4:-;;;;;;;;;;;;;;;;;",
  "deployedSourceMap": "129:1269:4:-;;;;;;;;;-1:-1:-1;;;129:1269:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1518:46:1;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1518:46:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2894:194;;;;;;;;;;-1:-1:-1;;;;;2894:194:1;;;;;;;;;;;;;;;;;;;;;;;;;;8364:213;;;;;;;;;;;;-1:-1:-1;;;;;8364:213:1;;;;;;;;;;;;;;;;;;;;;;;;;;1610:43;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1610:43:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5774:319;;;;;;;;;;;;;;-1:-1:-1;;;;;5774:319:1;;;;;;;;;;;;;;;;;;;;;;4650:333;;;;;;;;;;;;;;3591:897;;;;;;;;;;;;;;-1:-1:-1;;;;;3591:897:1;;;;;;;;;;8819:271;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:2;8:100;;;99:1;94:3;90;84:5;71:3;;;64:6;52:2;45:3;8:100;;;12:14;3:109;;;;;;;;;;;;;;;;6496:129:1;;;;;;;;;;;;;;;;5238:160;;;;;;;;;;;;;;;;7886:138;;;;;;;;;;;;;;6099:194;;;;;;;;;;;;;;;;;;;;9252:122;;;;;;;;;;;;;;406:990:4;;;;;;;;;;;;;;2336:476:1;;;;;;;;;;-1:-1:-1;;;;;2336:476:1;;;;;;;;;;;1518:46;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1518:46:1;;;;;;;;:::o;2894:194::-;3004:7;3040:17;3059:8;3069:11;3030:51;;-1:-1:-1;;;;;3030:51:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3023:58;;2894:194;;;;;:::o;8364:213::-;8443:4;8449;8465:18;;:::i;:::-;8486:22;;;;:9;:22;;;;;;;;-1:-1:-1;;;;;8486:37:1;;;;:29;;:37;;;;;;;;:22;8465:58;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8465:58:1;8541:10;8553:5;:16;;;8533:37;;;;8364:213;;;;;;:::o;1610:43::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1610:43:1;;;;;;;;;;;;;;;;;;;:::o;5774:319::-;5909:4;1992:22;;;:9;:22;;;;;:28;5867:11;;1978:10;-1:-1:-1;;;;;1978:42:1;;;1992:28;;1978:42;1970:51;;;;;;2186:22;;;;:9;:22;;;;;:27;;;5888:11;;2186:27;;2178:36;;;;;;;;5931:10;5942:22;;;:9;:22;;;;;;;;:33;;;5931:45;;;;;;;;:56;;;;;5929:58;5925:101;;;6010:5;6003:12;;;;5925:101;6043:43;6056:11;6069:6;6077:5;6084:1;6043:12;:43::i;:::-;6035:51;;2224:1;2031;5774:319;;;;;;:::o;4650:333::-;4762:4;1992:22;;;:9;:22;;;;;:28;4720:11;;1978:10;-1:-1:-1;;;;;1978:42:1;;;1992:28;;1978:42;1970:51;;;;;;2186:22;;;;:9;:22;;;;;:27;;;4741:11;;2186:27;;2178:36;;;;;;;;4784:10;4795:22;;;:9;:22;;;;;;;;:33;;;4784:45;;;;;;;;:56;;;;;4782:58;4778:101;;;4863:5;4856:12;;;;4778:101;4888:27;4903:11;4888:14;:27::i;:::-;4943:11;4925:30;;;;;;;;;;4972:4;4965:11;;2224:1;2031;4650:333;;;;:::o;3591:897::-;3714:7;3967:18;4077:24;;:::i;:::-;3846:1;3794:23;;;;;;;;;;:40;-1:-1:-1;;;;;3794:40:1;:54;;3786:63;;;;;;3883:1;3867:13;:17;:56;;;;;1758:2;3888:13;:35;;3867:56;3859:65;;;;;;;;3998:4;4004:12;;3988:29;;-1:-1:-1;;;;;3988:29:1;;;;;;;;;;;;;;;;;;;;;;4027:12;:14;;;;;;;;;4111:21;;;;:37;;;4158:19;;;:33;;;-1:-1:-1;;;;;4201:25:1;;;:15;;;;:25;;;;4236:33;;;-1:-1:-1;4236:19:1;;:33;4296:10;4279:27;;;;;4316:13;;;:20;;;4027:12;4346:21;;;;;;;;3988:29;;-1:-1:-1;4111:8:1;;;4346:32;;;-1:-1:-1;;4346:32:1;-1:-1:-1;;;;;4346:32:1;;;;;;;;;;;;;;;;-1:-1:-1;;4346:32:1;-1:-1:-1;;;;;4346:32:1;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4346:32:1;-1:-1:-1;;;;;4346:32:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;4346:32:1;;;;;;;;;;-1:-1:-1;4403:10:1;4388:66;4415:13;4430:10;4442:11;4388:66;;;;;-1:-1:-1;;;;;4388:66:1;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4471:10:1;3591:897;-1:-1:-1;;;;;3591:897:1:o;8819:271::-;8885:14;;:::i;:::-;8911:25;8939:22;;;:9;:22;;;;;;8971:113;8997:21;;;;8990:28;;8971:113;;9054:19;;;;:14;;;:19;;;;;;9041:5;9069:3;9041:10;;;;;;;;;;:32;9020:5;;8971:113;;6496:129;2186:22;;;;:9;:22;;;;;:27;;;6552:11;;2186:27;;2178:36;;;;;;;;6575:43;6594:11;6607:10;6575:18;:43::i;:::-;6496:129;;:::o;5238:160::-;5321:4;2186:22;;;:9;:22;;;;;:27;;;5300:11;;2186:27;;2178:36;;;;;;;;5344:47;5357:11;5370:10;5382:5;5389:1;5344:12;:47::i;:::-;5337:54;5238:160;-1:-1:-1;;;;5238:160:1:o;7886:138::-;7959:4;7982:22;;;:9;:22;;;;;:35;;;;7886:138::o;6099:194::-;6216:4;2186:22;;;:9;:22;;;;;:27;;;6195:11;;2186:27;;2178:36;;;;;;;;6239:47;6252:11;6264:10;6275:5;6281:4;6239:12;:47::i;:::-;6232:54;6099:194;-1:-1:-1;;;;;;6099:194:1:o;9252:122::-;9316:4;9340:22;;;:9;:22;;;;;:27;;;;;;9252:122::o;406:990:4:-;480:4;496:25;557:20;652:12;829:8;851:11;881:8;1106:27;;:::i;:::-;2186:22:1;;;;:9;:22;;;;;:27;;;459:11:4;;2186:27:1;;2178:36;;;;;;;;524:22:4;;;;:9;:22;;;;;;;;591:19;;;;580:31;;;;;;;;;:48;524:22;;-1:-1:-1;;;;;;580:48:4;;;;:60;;:62;;;;;;;;;-1:-1:-1;;;580:62:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;678:19;;;;667:10;:31;;;;;;;;;;:39;;;580:62;;-1:-1:-1;667:39:4;-1:-1:-1;810:3:4;;-1:-1:-1;786:23:4;;;:27;764:8;:19;;;:49;760:608;;;892:1;881:12;;876:217;900:21;;;;895:26;;876:217;;952:19;;;;:14;;;:19;;;;;;:25;;;948:131;;;1007:19;;;;:14;;;:19;;;;;;;-1:-1:-1;1022:3:4;;-1:-1:-1;1022:3:4;;948:131;923:5;;;;;876:217;;;1136:8;1106:38;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1106:38:4;-1:-1:-1;;;;;1106:38:4;-1:-1:-1;;;;;1106:38:4;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1106:38:4;-1:-1:-1;;;;;1106:38:4;-1:-1:-1;;;;;1106:38:4;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1106:38:4;-1:-1:-1;;;;;1106:38:4;-1:-1:-1;;;;;1106:38:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1165:9;:22;1175:11;1165:22;;;;;;;;;;;;;;;;;;1158:29;;;;;;;;;-1:-1:-1;;;;;1158:29:4;;;;;;;;;;;;;;-1:-1:-1;;;;;1158:29:4;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1158:29:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1220:11;1201:39;;;;1233:6;1201:39;;;;;;;;;;;;;;1255:11;:22;;;-1:-1:-1;;;;;1254:32:4;;1287:11;1300;:18;;;1324:6;1254:78;;;;;;;;-1:-1:-1;;;1254:78:4;;;;;;;;;;;;;-1:-1:-1;;;;;1254:78:4;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1353:4;1346:11;;;;760:608;1384:5;1377:12;;2224:1:1;406:990:4;;;;;;;;;;;:::o;2336:476:1:-;2437:7;2506:24;2476:3;2464:8;:15;;:31;;;;;2494:1;2483:8;:12;2464:31;2456:40;;;;;;;;2533:59;2551:17;2570:8;2580:11;2533:17;:59::i;:::-;2506:86;;2633:139;;;;;;;;;;-1:-1:-1;;;;;2633:139:1;;;;;;;;;;;;;;;;;;-1:-1:-1;2602:28:1;;;;;;;;2633:139;2602:170;;;-1:-1:-1;;2602:170:1;-1:-1:-1;;;;;2602:170:1;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;2602:170:1;;;;;;;;;;-1:-1:-1;2789:16:1;2336:476;-1:-1:-1;;;;2336:476:1:o;10623:1210::-;10721:4;10737:25;10797:24;;:::i;:::-;10989:15;10765:22;;;:9;:22;;;;;;;;10835:19;;;;10824:31;;;;;;;;;10765:22;;-1:-1:-1;10989:15:1;;10824:31;10797:58;;;;;;;;;;;;-1:-1:-1;;;;;10797:58:1;;;;;;;;;;;;;;;;;;;;;;;;10911:21;;;;10797:58;;-1:-1:-1;10902:30:1;;;10894:39;;;;;;11007:6;:23;-1:-1:-1;;;;;11007:36:1;;11044:6;11007:44;;;;;;;;-1:-1:-1;;;11007:44:1;;;;;;-1:-1:-1;;;;;11007:44:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;11069:18:1;;;;11061:27;;;;;;-1:-1:-1;11109:4:1;11127:8;;11123:55;;;-1:-1:-1;11157:10:1;11123:55;-1:-1:-1;;;;;11258:23:1;;;;;;:15;;;:23;;;;;:34;;;:39;11254:109;;11313:39;11332:11;11345:6;11313:18;:39::i;:::-;11434:21;;;;:14;;;:21;;;;;;11426:30;;:3;;:30;:7;:30;:::i;:::-;11402:21;;;;:14;;;:21;;;;;:54;11496:19;;;;11488:28;;:3;;:28;:7;:28;:::i;:::-;11466:19;;;:50;11552:71;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11526:23:1;;-1:-1:-1;11526:23:1;;;:15;;;:23;;;;11552:71;11526:97;;;;;;;;;;;;-1:-1:-1;;;;;;11651:79:1;;;;11667:11;;11651:79;;11688:5;;11695:10;;11718;11708:20;;;;11651:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11806:20;11814:11;11806:7;:20::i;:::-;11799:27;10623:1210;-1:-1:-1;;;;;;;;;10623:1210:1:o;9831:275::-;9894:25;9922:22;;;:9;:22;;;;;;9954:107;9980:21;;;;9973:28;;9954:107;;10031:19;;;;:14;;;:19;;;;;10024:26;10003:5;;9954:107;;;-1:-1:-1;;10077:22:1;;;;:9;:22;;;;;;;10070:29;;-1:-1:-1;;10070:29:1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;10070:29:1;;;9831:275::o;9380:445::-;9464:25;9524:18;;:::i;:::-;9492:22;;;;:9;:22;;;;;;;;-1:-1:-1;;;;;9545:23:1;;;;:15;;;:23;;;;;;;9492:22;;-1:-1:-1;9545:23:1;9492:22;9524:44;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9607:50:1;;9640:16;9608:14;;;:26;9623:5;:10;9608:26;;;;;;;;;;;;9607:32;;:50;;;;:::i;:::-;9578:14;;;:26;9593:5;:10;9578:26;;;;;;;;;;;:79;;;;9689:43;9715:5;:16;;;9690:19;;;;;9689:43;:25;:43;:::i;:::-;9667:19;;;:65;-1:-1:-1;;;;;9749:23:1;;;;;;:15;;;:23;;;;;;9742:30;;;;;;;;;9798:11;;9782:36;;;;;;;;;;9380:445;;;;:::o;698:129:31:-;756:7;783:5;;;801:6;;;;794:14;;;;821:1;698:129;-1:-1:-1;;;698:129:31:o;584:110::-;642:7;664:6;;;;657:14;;;;-1:-1:-1;684:5:31;;;584:110::o;129:1269:4:-;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
  "source": "pragma solidity ^0.4.18;\n\nimport \"../controller/Reputation.sol\";\nimport \"./IntVoteInterface.sol\";\nimport \"./AbsoluteVote.sol\";\n\n\ncontract QuorumVote is IntVoteInterface, AbsoluteVote {\n    /**\n    * @dev check if the proposal has been decided, and if so, execute the proposal\n    * @param _proposalId the id of the proposal\n    */\n    // TODO: do we want to delete the vote from the proposals mapping?\n    function execute(bytes32 _proposalId) public votable(_proposalId) returns(bool) {\n        Proposal storage proposal = proposals[_proposalId];\n\n        uint totalReputation = parameters[proposal.paramsHash].reputationSystem.totalSupply();\n        uint precReq = parameters[proposal.paramsHash].precReq;\n\n        // this is the actual voting rule:\n        if (proposal.totalVotes > totalReputation*precReq/100) {\n            uint max;\n            uint maxInd;\n            for (uint cnt = 1; cnt<=proposal.numOfChoices; cnt++) {\n                if (proposal.votes[cnt] > max) {\n                    max = proposal.votes[cnt];\n                    maxInd = cnt;\n                }\n            }\n            Proposal memory tmpProposal = proposal;\n            delete proposals[_proposalId];\n            LogExecuteProposal(_proposalId, maxInd);\n            (tmpProposal.executable).execute(_proposalId, tmpProposal.avatar, int(maxInd));\n            return true;\n        }\n        return false;\n    }\n}\n",
  "sourcePath": "/home/travis/build/dev-matan-tsuberi/daostack/contracts/VotingMachines/QuorumVote.sol",
  "ast": {
    "attributes": {
      "absolutePath": "/home/travis/build/dev-matan-tsuberi/daostack/contracts/VotingMachines/QuorumVote.sol",
      "exportedSymbols": {
        "QuorumVote": [
          2774
        ]
      }
    },
    "children": [
      {
        "attributes": {
          "literals": [
            "solidity",
            "^",
            "0.4",
            ".18"
          ]
        },
        "id": 2653,
        "name": "PragmaDirective",
        "src": "0:24:4"
      },
      {
        "attributes": {
          "SourceUnit": 4545,
          "absolutePath": "/home/travis/build/dev-matan-tsuberi/daostack/contracts/controller/Reputation.sol",
          "file": "../controller/Reputation.sol",
          "scope": 2775,
          "symbolAliases": [
            null
          ],
          "unitAlias": ""
        },
        "id": 2654,
        "name": "ImportDirective",
        "src": "26:38:4"
      },
      {
        "attributes": {
          "SourceUnit": 2652,
          "absolutePath": "/home/travis/build/dev-matan-tsuberi/daostack/contracts/VotingMachines/IntVoteInterface.sol",
          "file": "./IntVoteInterface.sol",
          "scope": 2775,
          "symbolAliases": [
            null
          ],
          "unitAlias": ""
        },
        "id": 2655,
        "name": "ImportDirective",
        "src": "65:32:4"
      },
      {
        "attributes": {
          "SourceUnit": 882,
          "absolutePath": "/home/travis/build/dev-matan-tsuberi/daostack/contracts/VotingMachines/AbsoluteVote.sol",
          "file": "./AbsoluteVote.sol",
          "scope": 2775,
          "symbolAliases": [
            null
          ],
          "unitAlias": ""
        },
        "id": 2656,
        "name": "ImportDirective",
        "src": "98:28:4"
      },
      {
        "attributes": {
          "contractDependencies": [
            881,
            2651
          ],
          "contractKind": "contract",
          "documentation": null,
          "fullyImplemented": true,
          "linearizedBaseContracts": [
            2774,
            881,
            2651
          ],
          "name": "QuorumVote",
          "scope": 2775
        },
        "children": [
          {
            "attributes": {
              "arguments": [
                null
              ]
            },
            "children": [
              {
                "attributes": {
                  "contractScope": null,
                  "name": "IntVoteInterface",
                  "referencedDeclaration": 2651,
                  "type": "contract IntVoteInterface"
                },
                "id": 2657,
                "name": "UserDefinedTypeName",
                "src": "152:16:4"
              }
            ],
            "id": 2658,
            "name": "InheritanceSpecifier",
            "src": "152:16:4"
          },
          {
            "attributes": {
              "arguments": [
                null
              ]
            },
            "children": [
              {
                "attributes": {
                  "contractScope": null,
                  "name": "AbsoluteVote",
                  "referencedDeclaration": 881,
                  "type": "contract AbsoluteVote"
                },
                "id": 2659,
                "name": "UserDefinedTypeName",
                "src": "170:12:4"
              }
            ],
            "id": 2660,
            "name": "InheritanceSpecifier",
            "src": "170:12:4"
          },
          {
            "attributes": {
              "constant": false,
              "implemented": true,
              "isConstructor": false,
              "name": "execute",
              "payable": false,
              "scope": 2774,
              "stateMutability": "nonpayable",
              "superFunction": 565,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 2773,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 2661,
                        "name": "ElementaryTypeName",
                        "src": "423:7:4"
                      }
                    ],
                    "id": 2662,
                    "name": "VariableDeclaration",
                    "src": "423:19:4"
                  }
                ],
                "id": 2663,
                "name": "ParameterList",
                "src": "422:21:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 2773,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 2667,
                        "name": "ElementaryTypeName",
                        "src": "480:4:4"
                      }
                    ],
                    "id": 2668,
                    "name": "VariableDeclaration",
                    "src": "480:4:4"
                  }
                ],
                "id": 2669,
                "name": "ParameterList",
                "src": "479:6:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 181,
                      "type": "modifier (bytes32)",
                      "value": "votable"
                    },
                    "id": 2664,
                    "name": "Identifier",
                    "src": "451:7:4"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 2662,
                      "type": "bytes32",
                      "value": "_proposalId"
                    },
                    "id": 2665,
                    "name": "Identifier",
                    "src": "459:11:4"
                  }
                ],
                "id": 2666,
                "name": "ModifierInvocation",
                "src": "451:20:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "assignments": [
                        2671
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "proposal",
                          "scope": 2773,
                          "stateVariable": false,
                          "storageLocation": "storage",
                          "type": "struct AbsoluteVote.Proposal storage pointer",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "contractScope": null,
                              "name": "Proposal",
                              "referencedDeclaration": 101,
                              "type": "struct AbsoluteVote.Proposal storage pointer"
                            },
                            "id": 2670,
                            "name": "UserDefinedTypeName",
                            "src": "496:8:4"
                          }
                        ],
                        "id": 2671,
                        "name": "VariableDeclaration",
                        "src": "496:25:4"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "type": "struct AbsoluteVote.Proposal storage ref"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 147,
                              "type": "mapping(bytes32 => struct AbsoluteVote.Proposal storage ref)",
                              "value": "proposals"
                            },
                            "id": 2672,
                            "name": "Identifier",
                            "src": "524:9:4"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "overloadedDeclarations": [
                                null
                              ],
                              "referencedDeclaration": 2662,
                              "type": "bytes32",
                              "value": "_proposalId"
                            },
                            "id": 2673,
                            "name": "Identifier",
                            "src": "534:11:4"
                          }
                        ],
                        "id": 2674,
                        "name": "IndexAccess",
                        "src": "524:22:4"
                      }
                    ],
                    "id": 2675,
                    "name": "VariableDeclarationStatement",
                    "src": "496:50:4"
                  },
                  {
                    "attributes": {
                      "assignments": [
                        2677
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "totalReputation",
                          "scope": 2773,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "uint256",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "uint",
                              "type": "uint256"
                            },
                            "id": 2676,
                            "name": "ElementaryTypeName",
                            "src": "557:4:4"
                          }
                        ],
                        "id": 2677,
                        "name": "VariableDeclaration",
                        "src": "557:20:4"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "arguments": [
                            null
                          ],
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "isStructConstructorCall": false,
                          "lValueRequested": false,
                          "names": [
                            null
                          ],
                          "type": "uint256",
                          "type_conversion": false
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": [
                                null
                              ],
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "member_name": "totalSupply",
                              "referencedDeclaration": 4410,
                              "type": "function () view external returns (uint256)"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "member_name": "reputationSystem",
                                  "referencedDeclaration": 68,
                                  "type": "contract Reputation"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "type": "struct AbsoluteVote.Parameters storage ref"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 143,
                                          "type": "mapping(bytes32 => struct AbsoluteVote.Parameters storage ref)",
                                          "value": "parameters"
                                        },
                                        "id": 2678,
                                        "name": "Identifier",
                                        "src": "580:10:4"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "isConstant": false,
                                          "isLValue": true,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "member_name": "paramsHash",
                                          "referencedDeclaration": 88,
                                          "type": "bytes32"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 2671,
                                              "type": "struct AbsoluteVote.Proposal storage pointer",
                                              "value": "proposal"
                                            },
                                            "id": 2679,
                                            "name": "Identifier",
                                            "src": "591:8:4"
                                          }
                                        ],
                                        "id": 2680,
                                        "name": "MemberAccess",
                                        "src": "591:19:4"
                                      }
                                    ],
                                    "id": 2681,
                                    "name": "IndexAccess",
                                    "src": "580:31:4"
                                  }
                                ],
                                "id": 2682,
                                "name": "MemberAccess",
                                "src": "580:48:4"
                              }
                            ],
                            "id": 2683,
                            "name": "MemberAccess",
                            "src": "580:60:4"
                          }
                        ],
                        "id": 2684,
                        "name": "FunctionCall",
                        "src": "580:62:4"
                      }
                    ],
                    "id": 2685,
                    "name": "VariableDeclarationStatement",
                    "src": "557:85:4"
                  },
                  {
                    "attributes": {
                      "assignments": [
                        2687
                      ]
                    },
                    "children": [
                      {
                        "attributes": {
                          "constant": false,
                          "name": "precReq",
                          "scope": 2773,
                          "stateVariable": false,
                          "storageLocation": "default",
                          "type": "uint256",
                          "value": null,
                          "visibility": "internal"
                        },
                        "children": [
                          {
                            "attributes": {
                              "name": "uint",
                              "type": "uint256"
                            },
                            "id": 2686,
                            "name": "ElementaryTypeName",
                            "src": "652:4:4"
                          }
                        ],
                        "id": 2687,
                        "name": "VariableDeclaration",
                        "src": "652:12:4"
                      },
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "member_name": "precReq",
                          "referencedDeclaration": 70,
                          "type": "uint256"
                        },
                        "children": [
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "type": "struct AbsoluteVote.Parameters storage ref"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 143,
                                  "type": "mapping(bytes32 => struct AbsoluteVote.Parameters storage ref)",
                                  "value": "parameters"
                                },
                                "id": 2688,
                                "name": "Identifier",
                                "src": "667:10:4"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "member_name": "paramsHash",
                                  "referencedDeclaration": 88,
                                  "type": "bytes32"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 2671,
                                      "type": "struct AbsoluteVote.Proposal storage pointer",
                                      "value": "proposal"
                                    },
                                    "id": 2689,
                                    "name": "Identifier",
                                    "src": "678:8:4"
                                  }
                                ],
                                "id": 2690,
                                "name": "MemberAccess",
                                "src": "678:19:4"
                              }
                            ],
                            "id": 2691,
                            "name": "IndexAccess",
                            "src": "667:31:4"
                          }
                        ],
                        "id": 2692,
                        "name": "MemberAccess",
                        "src": "667:39:4"
                      }
                    ],
                    "id": 2693,
                    "name": "VariableDeclarationStatement",
                    "src": "652:54:4"
                  },
                  {
                    "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,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "member_name": "totalVotes",
                              "referencedDeclaration": 90,
                              "type": "uint256"
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 2671,
                                  "type": "struct AbsoluteVote.Proposal storage pointer",
                                  "value": "proposal"
                                },
                                "id": 2694,
                                "name": "Identifier",
                                "src": "764:8:4"
                              }
                            ],
                            "id": 2695,
                            "name": "MemberAccess",
                            "src": "764:19:4"
                          },
                          {
                            "attributes": {
                              "argumentTypes": null,
                              "commonType": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              },
                              "isConstant": false,
                              "isLValue": false,
                              "isPure": false,
                              "lValueRequested": false,
                              "operator": "/",
                              "type": "uint256"
                            },
                            "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": 2677,
                                      "type": "uint256",
                                      "value": "totalReputation"
                                    },
                                    "id": 2696,
                                    "name": "Identifier",
                                    "src": "786:15:4"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 2687,
                                      "type": "uint256",
                                      "value": "precReq"
                                    },
                                    "id": 2697,
                                    "name": "Identifier",
                                    "src": "802:7:4"
                                  }
                                ],
                                "id": 2698,
                                "name": "BinaryOperation",
                                "src": "786:23:4"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "hexvalue": "313030",
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "subdenomination": null,
                                  "token": "number",
                                  "type": "int_const 100",
                                  "value": "100"
                                },
                                "id": 2699,
                                "name": "Literal",
                                "src": "810:3:4"
                              }
                            ],
                            "id": 2700,
                            "name": "BinaryOperation",
                            "src": "786:27:4"
                          }
                        ],
                        "id": 2701,
                        "name": "BinaryOperation",
                        "src": "764:49:4"
                      },
                      {
                        "children": [
                          {
                            "attributes": {
                              "assignments": [
                                null
                              ],
                              "initialValue": null
                            },
                            "children": [
                              {
                                "attributes": {
                                  "constant": false,
                                  "name": "max",
                                  "scope": 2773,
                                  "stateVariable": false,
                                  "storageLocation": "default",
                                  "type": "uint256",
                                  "value": null,
                                  "visibility": "internal"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "name": "uint",
                                      "type": "uint256"
                                    },
                                    "id": 2702,
                                    "name": "ElementaryTypeName",
                                    "src": "829:4:4"
                                  }
                                ],
                                "id": 2703,
                                "name": "VariableDeclaration",
                                "src": "829:8:4"
                              }
                            ],
                            "id": 2704,
                            "name": "VariableDeclarationStatement",
                            "src": "829:8:4"
                          },
                          {
                            "attributes": {
                              "assignments": [
                                null
                              ],
                              "initialValue": null
                            },
                            "children": [
                              {
                                "attributes": {
                                  "constant": false,
                                  "name": "maxInd",
                                  "scope": 2773,
                                  "stateVariable": false,
                                  "storageLocation": "default",
                                  "type": "uint256",
                                  "value": null,
                                  "visibility": "internal"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "name": "uint",
                                      "type": "uint256"
                                    },
                                    "id": 2705,
                                    "name": "ElementaryTypeName",
                                    "src": "851:4:4"
                                  }
                                ],
                                "id": 2706,
                                "name": "VariableDeclaration",
                                "src": "851:11:4"
                              }
                            ],
                            "id": 2707,
                            "name": "VariableDeclarationStatement",
                            "src": "851:11:4"
                          },
                          {
                            "children": [
                              {
                                "attributes": {
                                  "assignments": [
                                    2709
                                  ]
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "constant": false,
                                      "name": "cnt",
                                      "scope": 2773,
                                      "stateVariable": false,
                                      "storageLocation": "default",
                                      "type": "uint256",
                                      "value": null,
                                      "visibility": "internal"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "name": "uint",
                                          "type": "uint256"
                                        },
                                        "id": 2708,
                                        "name": "ElementaryTypeName",
                                        "src": "881:4:4"
                                      }
                                    ],
                                    "id": 2709,
                                    "name": "VariableDeclaration",
                                    "src": "881:8:4"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "hexvalue": "31",
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": true,
                                      "lValueRequested": false,
                                      "subdenomination": null,
                                      "token": "number",
                                      "type": "int_const 1",
                                      "value": "1"
                                    },
                                    "id": 2710,
                                    "name": "Literal",
                                    "src": "892:1:4"
                                  }
                                ],
                                "id": 2711,
                                "name": "VariableDeclarationStatement",
                                "src": "881:12:4"
                              },
                              {
                                "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": 2709,
                                      "type": "uint256",
                                      "value": "cnt"
                                    },
                                    "id": 2712,
                                    "name": "Identifier",
                                    "src": "895:3:4"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "member_name": "numOfChoices",
                                      "referencedDeclaration": 84,
                                      "type": "uint256"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 2671,
                                          "type": "struct AbsoluteVote.Proposal storage pointer",
                                          "value": "proposal"
                                        },
                                        "id": 2713,
                                        "name": "Identifier",
                                        "src": "900:8:4"
                                      }
                                    ],
                                    "id": 2714,
                                    "name": "MemberAccess",
                                    "src": "900:21:4"
                                  }
                                ],
                                "id": 2715,
                                "name": "BinaryOperation",
                                "src": "895:26:4"
                              },
                              {
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "operator": "++",
                                      "prefix": false,
                                      "type": "uint256"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 2709,
                                          "type": "uint256",
                                          "value": "cnt"
                                        },
                                        "id": 2716,
                                        "name": "Identifier",
                                        "src": "923:3:4"
                                      }
                                    ],
                                    "id": 2717,
                                    "name": "UnaryOperation",
                                    "src": "923:5:4"
                                  }
                                ],
                                "id": 2718,
                                "name": "ExpressionStatement",
                                "src": "923:5:4"
                              },
                              {
                                "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,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "type": "uint256"
                                            },
                                            "children": [
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "isConstant": false,
                                                  "isLValue": true,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "member_name": "votes",
                                                  "referencedDeclaration": 94,
                                                  "type": "mapping(uint256 => uint256)"
                                                },
                                                "children": [
                                                  {
                                                    "attributes": {
                                                      "argumentTypes": null,
                                                      "overloadedDeclarations": [
                                                        null
                                                      ],
                                                      "referencedDeclaration": 2671,
                                                      "type": "struct AbsoluteVote.Proposal storage pointer",
                                                      "value": "proposal"
                                                    },
                                                    "id": 2719,
                                                    "name": "Identifier",
                                                    "src": "952:8:4"
                                                  }
                                                ],
                                                "id": 2720,
                                                "name": "MemberAccess",
                                                "src": "952:14:4"
                                              },
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "overloadedDeclarations": [
                                                    null
                                                  ],
                                                  "referencedDeclaration": 2709,
                                                  "type": "uint256",
                                                  "value": "cnt"
                                                },
                                                "id": 2721,
                                                "name": "Identifier",
                                                "src": "967:3:4"
                                              }
                                            ],
                                            "id": 2722,
                                            "name": "IndexAccess",
                                            "src": "952:19:4"
                                          },
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "overloadedDeclarations": [
                                                null
                                              ],
                                              "referencedDeclaration": 2703,
                                              "type": "uint256",
                                              "value": "max"
                                            },
                                            "id": 2723,
                                            "name": "Identifier",
                                            "src": "974:3:4"
                                          }
                                        ],
                                        "id": 2724,
                                        "name": "BinaryOperation",
                                        "src": "952:25:4"
                                      },
                                      {
                                        "children": [
                                          {
                                            "children": [
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "isConstant": false,
                                                  "isLValue": false,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "operator": "=",
                                                  "type": "uint256"
                                                },
                                                "children": [
                                                  {
                                                    "attributes": {
                                                      "argumentTypes": null,
                                                      "overloadedDeclarations": [
                                                        null
                                                      ],
                                                      "referencedDeclaration": 2703,
                                                      "type": "uint256",
                                                      "value": "max"
                                                    },
                                                    "id": 2725,
                                                    "name": "Identifier",
                                                    "src": "1001:3:4"
                                                  },
                                                  {
                                                    "attributes": {
                                                      "argumentTypes": null,
                                                      "isConstant": false,
                                                      "isLValue": true,
                                                      "isPure": false,
                                                      "lValueRequested": false,
                                                      "type": "uint256"
                                                    },
                                                    "children": [
                                                      {
                                                        "attributes": {
                                                          "argumentTypes": null,
                                                          "isConstant": false,
                                                          "isLValue": true,
                                                          "isPure": false,
                                                          "lValueRequested": false,
                                                          "member_name": "votes",
                                                          "referencedDeclaration": 94,
                                                          "type": "mapping(uint256 => uint256)"
                                                        },
                                                        "children": [
                                                          {
                                                            "attributes": {
                                                              "argumentTypes": null,
                                                              "overloadedDeclarations": [
                                                                null
                                                              ],
                                                              "referencedDeclaration": 2671,
                                                              "type": "struct AbsoluteVote.Proposal storage pointer",
                                                              "value": "proposal"
                                                            },
                                                            "id": 2726,
                                                            "name": "Identifier",
                                                            "src": "1007:8:4"
                                                          }
                                                        ],
                                                        "id": 2727,
                                                        "name": "MemberAccess",
                                                        "src": "1007:14:4"
                                                      },
                                                      {
                                                        "attributes": {
                                                          "argumentTypes": null,
                                                          "overloadedDeclarations": [
                                                            null
                                                          ],
                                                          "referencedDeclaration": 2709,
                                                          "type": "uint256",
                                                          "value": "cnt"
                                                        },
                                                        "id": 2728,
                                                        "name": "Identifier",
                                                        "src": "1022:3:4"
                                                      }
                                                    ],
                                                    "id": 2729,
                                                    "name": "IndexAccess",
                                                    "src": "1007:19:4"
                                                  }
                                                ],
                                                "id": 2730,
                                                "name": "Assignment",
                                                "src": "1001:25:4"
                                              }
                                            ],
                                            "id": 2731,
                                            "name": "ExpressionStatement",
                                            "src": "1001:25:4"
                                          },
                                          {
                                            "children": [
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "isConstant": false,
                                                  "isLValue": false,
                                                  "isPure": false,
                                                  "lValueRequested": false,
                                                  "operator": "=",
                                                  "type": "uint256"
                                                },
                                                "children": [
                                                  {
                                                    "attributes": {
                                                      "argumentTypes": null,
                                                      "overloadedDeclarations": [
                                                        null
                                                      ],
                                                      "referencedDeclaration": 2706,
                                                      "type": "uint256",
                                                      "value": "maxInd"
                                                    },
                                                    "id": 2732,
                                                    "name": "Identifier",
                                                    "src": "1048:6:4"
                                                  },
                                                  {
                                                    "attributes": {
                                                      "argumentTypes": null,
                                                      "overloadedDeclarations": [
                                                        null
                                                      ],
                                                      "referencedDeclaration": 2709,
                                                      "type": "uint256",
                                                      "value": "cnt"
                                                    },
                                                    "id": 2733,
                                                    "name": "Identifier",
                                                    "src": "1057:3:4"
                                                  }
                                                ],
                                                "id": 2734,
                                                "name": "Assignment",
                                                "src": "1048:12:4"
                                              }
                                            ],
                                            "id": 2735,
                                            "name": "ExpressionStatement",
                                            "src": "1048:12:4"
                                          }
                                        ],
                                        "id": 2736,
                                        "name": "Block",
                                        "src": "979:100:4"
                                      }
                                    ],
                                    "id": 2737,
                                    "name": "IfStatement",
                                    "src": "948:131:4"
                                  }
                                ],
                                "id": 2738,
                                "name": "Block",
                                "src": "930:163:4"
                              }
                            ],
                            "id": 2739,
                            "name": "ForStatement",
                            "src": "876:217:4"
                          },
                          {
                            "attributes": {
                              "assignments": [
                                2741
                              ]
                            },
                            "children": [
                              {
                                "attributes": {
                                  "constant": false,
                                  "name": "tmpProposal",
                                  "scope": 2773,
                                  "stateVariable": false,
                                  "storageLocation": "memory",
                                  "type": "struct AbsoluteVote.Proposal memory",
                                  "value": null,
                                  "visibility": "internal"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "contractScope": null,
                                      "name": "Proposal",
                                      "referencedDeclaration": 101,
                                      "type": "struct AbsoluteVote.Proposal storage pointer"
                                    },
                                    "id": 2740,
                                    "name": "UserDefinedTypeName",
                                    "src": "1106:8:4"
                                  }
                                ],
                                "id": 2741,
                                "name": "VariableDeclaration",
                                "src": "1106:27:4"
                              },
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "overloadedDeclarations": [
                                    null
                                  ],
                                  "referencedDeclaration": 2671,
                                  "type": "struct AbsoluteVote.Proposal storage pointer",
                                  "value": "proposal"
                                },
                                "id": 2742,
                                "name": "Identifier",
                                "src": "1136:8:4"
                              }
                            ],
                            "id": 2743,
                            "name": "VariableDeclarationStatement",
                            "src": "1106:38:4"
                          },
                          {
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "operator": "delete",
                                  "prefix": true,
                                  "type": "tuple()"
                                },
                                "children": [
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": true,
                                      "type": "struct AbsoluteVote.Proposal storage ref"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 147,
                                          "type": "mapping(bytes32 => struct AbsoluteVote.Proposal storage ref)",
                                          "value": "proposals"
                                        },
                                        "id": 2744,
                                        "name": "Identifier",
                                        "src": "1165:9:4"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 2662,
                                          "type": "bytes32",
                                          "value": "_proposalId"
                                        },
                                        "id": 2745,
                                        "name": "Identifier",
                                        "src": "1175:11:4"
                                      }
                                    ],
                                    "id": 2746,
                                    "name": "IndexAccess",
                                    "src": "1165:22:4"
                                  }
                                ],
                                "id": 2747,
                                "name": "UnaryOperation",
                                "src": "1158:29:4"
                              }
                            ],
                            "id": 2748,
                            "name": "ExpressionStatement",
                            "src": "1158:29:4"
                          },
                          {
                            "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_bytes32",
                                          "typeString": "bytes32"
                                        },
                                        {
                                          "typeIdentifier": "t_uint256",
                                          "typeString": "uint256"
                                        }
                                      ],
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 121,
                                      "type": "function (bytes32,uint256)",
                                      "value": "LogExecuteProposal"
                                    },
                                    "id": 2749,
                                    "name": "Identifier",
                                    "src": "1201:18:4"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 2662,
                                      "type": "bytes32",
                                      "value": "_proposalId"
                                    },
                                    "id": 2750,
                                    "name": "Identifier",
                                    "src": "1220:11:4"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 2706,
                                      "type": "uint256",
                                      "value": "maxInd"
                                    },
                                    "id": 2751,
                                    "name": "Identifier",
                                    "src": "1233:6:4"
                                  }
                                ],
                                "id": 2752,
                                "name": "FunctionCall",
                                "src": "1201:39:4"
                              }
                            ],
                            "id": 2753,
                            "name": "ExpressionStatement",
                            "src": "1201:39:4"
                          },
                          {
                            "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_bytes32",
                                          "typeString": "bytes32"
                                        },
                                        {
                                          "typeIdentifier": "t_address",
                                          "typeString": "address"
                                        },
                                        {
                                          "typeIdentifier": "t_int256",
                                          "typeString": "int256"
                                        }
                                      ],
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "member_name": "execute",
                                      "referencedDeclaration": 6616,
                                      "type": "function (bytes32,address,int256) external returns (bool)"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "isConstant": false,
                                          "isInlineArray": false,
                                          "isLValue": false,
                                          "isPure": false,
                                          "lValueRequested": false,
                                          "type": "contract ExecutableInterface"
                                        },
                                        "children": [
                                          {
                                            "attributes": {
                                              "argumentTypes": null,
                                              "isConstant": false,
                                              "isLValue": true,
                                              "isPure": false,
                                              "lValueRequested": false,
                                              "member_name": "executable",
                                              "referencedDeclaration": 86,
                                              "type": "contract ExecutableInterface"
                                            },
                                            "children": [
                                              {
                                                "attributes": {
                                                  "argumentTypes": null,
                                                  "overloadedDeclarations": [
                                                    null
                                                  ],
                                                  "referencedDeclaration": 2741,
                                                  "type": "struct AbsoluteVote.Proposal memory",
                                                  "value": "tmpProposal"
                                                },
                                                "id": 2754,
                                                "name": "Identifier",
                                                "src": "1255:11:4"
                                              }
                                            ],
                                            "id": 2755,
                                            "name": "MemberAccess",
                                            "src": "1255:22:4"
                                          }
                                        ],
                                        "id": 2756,
                                        "name": "TupleExpression",
                                        "src": "1254:24:4"
                                      }
                                    ],
                                    "id": 2757,
                                    "name": "MemberAccess",
                                    "src": "1254:32:4"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "overloadedDeclarations": [
                                        null
                                      ],
                                      "referencedDeclaration": 2662,
                                      "type": "bytes32",
                                      "value": "_proposalId"
                                    },
                                    "id": 2758,
                                    "name": "Identifier",
                                    "src": "1287:11:4"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": true,
                                      "isPure": false,
                                      "lValueRequested": false,
                                      "member_name": "avatar",
                                      "referencedDeclaration": 82,
                                      "type": "address"
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 2741,
                                          "type": "struct AbsoluteVote.Proposal memory",
                                          "value": "tmpProposal"
                                        },
                                        "id": 2759,
                                        "name": "Identifier",
                                        "src": "1300:11:4"
                                      }
                                    ],
                                    "id": 2760,
                                    "name": "MemberAccess",
                                    "src": "1300:18:4"
                                  },
                                  {
                                    "attributes": {
                                      "argumentTypes": null,
                                      "isConstant": false,
                                      "isLValue": false,
                                      "isPure": false,
                                      "isStructConstructorCall": false,
                                      "lValueRequested": false,
                                      "names": [
                                        null
                                      ],
                                      "type": "int256",
                                      "type_conversion": true
                                    },
                                    "children": [
                                      {
                                        "attributes": {
                                          "argumentTypes": [
                                            {
                                              "typeIdentifier": "t_uint256",
                                              "typeString": "uint256"
                                            }
                                          ],
                                          "isConstant": false,
                                          "isLValue": false,
                                          "isPure": true,
                                          "lValueRequested": false,
                                          "type": "type(int256)",
                                          "value": "int"
                                        },
                                        "id": 2761,
                                        "name": "ElementaryTypeNameExpression",
                                        "src": "1320:3:4"
                                      },
                                      {
                                        "attributes": {
                                          "argumentTypes": null,
                                          "overloadedDeclarations": [
                                            null
                                          ],
                                          "referencedDeclaration": 2706,
                                          "type": "uint256",
                                          "value": "maxInd"
                                        },
                                        "id": 2762,
                                        "name": "Identifier",
                                        "src": "1324:6:4"
                                      }
                                    ],
                                    "id": 2763,
                                    "name": "FunctionCall",
                                    "src": "1320:11:4"
                                  }
                                ],
                                "id": 2764,
                                "name": "FunctionCall",
                                "src": "1254:78:4"
                              }
                            ],
                            "id": 2765,
                            "name": "ExpressionStatement",
                            "src": "1254:78:4"
                          },
                          {
                            "attributes": {
                              "functionReturnParameters": 2669
                            },
                            "children": [
                              {
                                "attributes": {
                                  "argumentTypes": null,
                                  "hexvalue": "74727565",
                                  "isConstant": false,
                                  "isLValue": false,
                                  "isPure": true,
                                  "lValueRequested": false,
                                  "subdenomination": null,
                                  "token": "bool",
                                  "type": "bool",
                                  "value": "true"
                                },
                                "id": 2766,
                                "name": "Literal",
                                "src": "1353:4:4"
                              }
                            ],
                            "id": 2767,
                            "name": "Return",
                            "src": "1346:11:4"
                          }
                        ],
                        "id": 2768,
                        "name": "Block",
                        "src": "815:553:4"
                      }
                    ],
                    "id": 2769,
                    "name": "IfStatement",
                    "src": "760:608:4"
                  },
                  {
                    "attributes": {
                      "functionReturnParameters": 2669
                    },
                    "children": [
                      {
                        "attributes": {
                          "argumentTypes": null,
                          "hexvalue": "66616c7365",
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": true,
                          "lValueRequested": false,
                          "subdenomination": null,
                          "token": "bool",
                          "type": "bool",
                          "value": "false"
                        },
                        "id": 2770,
                        "name": "Literal",
                        "src": "1384:5:4"
                      }
                    ],
                    "id": 2771,
                    "name": "Return",
                    "src": "1377:12:4"
                  }
                ],
                "id": 2772,
                "name": "Block",
                "src": "486:910:4"
              }
            ],
            "id": 2773,
            "name": "FunctionDefinition",
            "src": "406:990:4"
          }
        ],
        "id": 2774,
        "name": "ContractDefinition",
        "src": "129:1269:4"
      }
    ],
    "id": 2775,
    "name": "SourceUnit",
    "src": "0:1399:4"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.18+commit.9cf6e910.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "1.0.1",
  "updatedAt": "2018-01-25T13:14:57.905Z"
}