{
  "contractName": "IntVoteInterface",
  "abi": [
    {
      "constant": false,
      "inputs": [
        {
          "name": "_numOfChoices",
          "type": "uint256"
        },
        {
          "name": "_proposalParameters",
          "type": "bytes32"
        },
        {
          "name": "_avatar",
          "type": "address"
        },
        {
          "name": "_executable",
          "type": "address"
        },
        {
          "name": "_proposer",
          "type": "address"
        }
      ],
      "name": "propose",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "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": "_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": "_token",
          "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"
    }
  ],
  "bytecode": "0x",
  "deployedBytecode": "0x",
  "sourceMap": "",
  "deployedSourceMap": "",
  "source": "pragma solidity ^0.4.18;\n\nimport \"../universalSchemes/ExecutableInterface.sol\";\n\n\ncontract IntVoteInterface {\n    modifier onlyProposalOwner(bytes32 _proposalId) {_;}\n    modifier votable(bytes32 _proposalId) {_;}\n\n    /**\n     * @dev register a new proposal with the given parameters. Every proposal has a unique ID which is being\n     * generated by calculating keccak256 of a incremented counter.\n     * @param _numOfChoices number of voting choices\n     * @param _proposalParameters defines the parameters of the voting machine used for this proposal\n     * @param _avatar an address to be sent as the payload to the _executable contract.\n     * @param _executable This contract will be executed when vote is over.\n     * @param _proposer address\n     * @return proposal's id.\n     */\n    function propose(\n        uint _numOfChoices,\n        bytes32 _proposalParameters,\n        address _avatar,\n        ExecutableInterface _executable,\n        address _proposer\n        ) public returns(bytes32);\n\n    // Only owned proposals and only the owner:\n    function cancelProposal(bytes32 _proposalId) public onlyProposalOwner(_proposalId) votable(_proposalId) returns(bool);\n\n    // Only owned proposals and only the owner:\n    function ownerVote(bytes32 _proposalId, uint _vote, address _voter) public onlyProposalOwner(_proposalId) returns(bool);\n\n    function vote(bytes32 _proposalId, uint _vote) public votable(_proposalId) returns(bool);\n\n    function voteWithSpecifiedAmounts(\n        bytes32 _proposalId,\n        uint _vote,\n        uint _rep,\n        uint _token) public votable(_proposalId) returns(bool);\n\n    function cancelVote(bytes32 _proposalId) public votable(_proposalId);\n\n    //@dev execute check if the proposal has been decided, and if so, execute the proposal\n    //@param _proposalId the id of the proposal\n    //@return bool true - the proposal has been executed\n    //             false - otherwise.\n    function execute(bytes32 _proposalId) public votable(_proposalId) returns(bool);\n\n    function getNumberOfChoices(bytes32 _proposalId) public constant returns(uint);\n\n    function isVotable(bytes32 _proposalId) public constant returns(bool);\n}\n",
  "sourcePath": "/Users/oren/daostack/daostack2/daostack/contracts/VotingMachines/IntVoteInterface.sol",
  "ast": {
    "attributes": {
      "absolutePath": "/Users/oren/daostack/daostack2/daostack/contracts/VotingMachines/IntVoteInterface.sol",
      "exportedSymbols": {
        "IntVoteInterface": [
          3459
        ]
      }
    },
    "children": [
      {
        "attributes": {
          "literals": [
            "solidity",
            "^",
            "0.4",
            ".18"
          ]
        },
        "id": 3343,
        "name": "PragmaDirective",
        "src": "0:24:4"
      },
      {
        "attributes": {
          "SourceUnit": 8022,
          "absolutePath": "/Users/oren/daostack/daostack2/daostack/contracts/universalSchemes/ExecutableInterface.sol",
          "file": "../universalSchemes/ExecutableInterface.sol",
          "scope": 3460,
          "symbolAliases": [
            null
          ],
          "unitAlias": ""
        },
        "id": 3344,
        "name": "ImportDirective",
        "src": "26:53:4"
      },
      {
        "attributes": {
          "baseContracts": [
            null
          ],
          "contractDependencies": [
            null
          ],
          "contractKind": "contract",
          "documentation": null,
          "fullyImplemented": false,
          "linearizedBaseContracts": [
            3459
          ],
          "name": "IntVoteInterface",
          "scope": 3460
        },
        "children": [
          {
            "attributes": {
              "name": "onlyProposalOwner",
              "visibility": "internal"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3350,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3345,
                        "name": "ElementaryTypeName",
                        "src": "141:7:4"
                      }
                    ],
                    "id": 3346,
                    "name": "VariableDeclaration",
                    "src": "141:19:4"
                  }
                ],
                "id": 3347,
                "name": "ParameterList",
                "src": "140:21:4"
              },
              {
                "children": [
                  {
                    "id": 3348,
                    "name": "PlaceholderStatement",
                    "src": "163:1:4"
                  }
                ],
                "id": 3349,
                "name": "Block",
                "src": "162:4:4"
              }
            ],
            "id": 3350,
            "name": "ModifierDefinition",
            "src": "114:52:4"
          },
          {
            "attributes": {
              "name": "votable",
              "visibility": "internal"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3356,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3351,
                        "name": "ElementaryTypeName",
                        "src": "188:7:4"
                      }
                    ],
                    "id": 3352,
                    "name": "VariableDeclaration",
                    "src": "188:19:4"
                  }
                ],
                "id": 3353,
                "name": "ParameterList",
                "src": "187:21:4"
              },
              {
                "children": [
                  {
                    "id": 3354,
                    "name": "PlaceholderStatement",
                    "src": "210:1:4"
                  }
                ],
                "id": 3355,
                "name": "Block",
                "src": "209:4:4"
              }
            ],
            "id": 3356,
            "name": "ModifierDefinition",
            "src": "171:42:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": false,
              "implemented": false,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "propose",
              "payable": false,
              "scope": 3459,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_numOfChoices",
                      "scope": 3371,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 3357,
                        "name": "ElementaryTypeName",
                        "src": "819:4:4"
                      }
                    ],
                    "id": 3358,
                    "name": "VariableDeclaration",
                    "src": "819:18:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalParameters",
                      "scope": 3371,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3359,
                        "name": "ElementaryTypeName",
                        "src": "847:7:4"
                      }
                    ],
                    "id": 3360,
                    "name": "VariableDeclaration",
                    "src": "847:27:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_avatar",
                      "scope": 3371,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3361,
                        "name": "ElementaryTypeName",
                        "src": "884:7:4"
                      }
                    ],
                    "id": 3362,
                    "name": "VariableDeclaration",
                    "src": "884:15:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_executable",
                      "scope": 3371,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "contract ExecutableInterface",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "contractScope": null,
                          "name": "ExecutableInterface",
                          "referencedDeclaration": 8021,
                          "type": "contract ExecutableInterface"
                        },
                        "id": 3363,
                        "name": "UserDefinedTypeName",
                        "src": "909:19:4"
                      }
                    ],
                    "id": 3364,
                    "name": "VariableDeclaration",
                    "src": "909:31:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposer",
                      "scope": 3371,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3365,
                        "name": "ElementaryTypeName",
                        "src": "950:7:4"
                      }
                    ],
                    "id": 3366,
                    "name": "VariableDeclaration",
                    "src": "950:17:4"
                  }
                ],
                "id": 3367,
                "name": "ParameterList",
                "src": "809:168:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3371,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3368,
                        "name": "ElementaryTypeName",
                        "src": "993:7:4"
                      }
                    ],
                    "id": 3369,
                    "name": "VariableDeclaration",
                    "src": "993:7:4"
                  }
                ],
                "id": 3370,
                "name": "ParameterList",
                "src": "992:9:4"
              }
            ],
            "id": 3371,
            "name": "FunctionDefinition",
            "src": "793:209:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": false,
              "implemented": false,
              "isConstructor": false,
              "name": "cancelProposal",
              "payable": false,
              "scope": 3459,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3384,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3372,
                        "name": "ElementaryTypeName",
                        "src": "1080:7:4"
                      }
                    ],
                    "id": 3373,
                    "name": "VariableDeclaration",
                    "src": "1080:19:4"
                  }
                ],
                "id": 3374,
                "name": "ParameterList",
                "src": "1079:21:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3384,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 3381,
                        "name": "ElementaryTypeName",
                        "src": "1168:4:4"
                      }
                    ],
                    "id": 3382,
                    "name": "VariableDeclaration",
                    "src": "1168:4:4"
                  }
                ],
                "id": 3383,
                "name": "ParameterList",
                "src": "1167:6:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3350,
                      "type": "modifier (bytes32)",
                      "value": "onlyProposalOwner"
                    },
                    "id": 3375,
                    "name": "Identifier",
                    "src": "1108:17:4"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3373,
                      "type": "bytes32",
                      "value": "_proposalId"
                    },
                    "id": 3376,
                    "name": "Identifier",
                    "src": "1126:11:4"
                  }
                ],
                "id": 3377,
                "name": "ModifierInvocation",
                "src": "1108:30:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3356,
                      "type": "modifier (bytes32)",
                      "value": "votable"
                    },
                    "id": 3378,
                    "name": "Identifier",
                    "src": "1139:7:4"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3373,
                      "type": "bytes32",
                      "value": "_proposalId"
                    },
                    "id": 3379,
                    "name": "Identifier",
                    "src": "1147:11:4"
                  }
                ],
                "id": 3380,
                "name": "ModifierInvocation",
                "src": "1139:20:4"
              }
            ],
            "id": 3384,
            "name": "FunctionDefinition",
            "src": "1056:118:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": false,
              "implemented": false,
              "isConstructor": false,
              "name": "ownerVote",
              "payable": false,
              "scope": 3459,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3398,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3385,
                        "name": "ElementaryTypeName",
                        "src": "1247:7:4"
                      }
                    ],
                    "id": 3386,
                    "name": "VariableDeclaration",
                    "src": "1247:19:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_vote",
                      "scope": 3398,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 3387,
                        "name": "ElementaryTypeName",
                        "src": "1268:4:4"
                      }
                    ],
                    "id": 3388,
                    "name": "VariableDeclaration",
                    "src": "1268:10:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_voter",
                      "scope": 3398,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "address",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "address",
                          "type": "address"
                        },
                        "id": 3389,
                        "name": "ElementaryTypeName",
                        "src": "1280:7:4"
                      }
                    ],
                    "id": 3390,
                    "name": "VariableDeclaration",
                    "src": "1280:14:4"
                  }
                ],
                "id": 3391,
                "name": "ParameterList",
                "src": "1246:49:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3398,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 3395,
                        "name": "ElementaryTypeName",
                        "src": "1342:4:4"
                      }
                    ],
                    "id": 3396,
                    "name": "VariableDeclaration",
                    "src": "1342:4:4"
                  }
                ],
                "id": 3397,
                "name": "ParameterList",
                "src": "1341:6:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3350,
                      "type": "modifier (bytes32)",
                      "value": "onlyProposalOwner"
                    },
                    "id": 3392,
                    "name": "Identifier",
                    "src": "1303:17:4"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3386,
                      "type": "bytes32",
                      "value": "_proposalId"
                    },
                    "id": 3393,
                    "name": "Identifier",
                    "src": "1321:11:4"
                  }
                ],
                "id": 3394,
                "name": "ModifierInvocation",
                "src": "1303:30:4"
              }
            ],
            "id": 3398,
            "name": "FunctionDefinition",
            "src": "1228:120:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": false,
              "implemented": false,
              "isConstructor": false,
              "name": "vote",
              "payable": false,
              "scope": 3459,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3410,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3399,
                        "name": "ElementaryTypeName",
                        "src": "1368:7:4"
                      }
                    ],
                    "id": 3400,
                    "name": "VariableDeclaration",
                    "src": "1368:19:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_vote",
                      "scope": 3410,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 3401,
                        "name": "ElementaryTypeName",
                        "src": "1389:4:4"
                      }
                    ],
                    "id": 3402,
                    "name": "VariableDeclaration",
                    "src": "1389:10:4"
                  }
                ],
                "id": 3403,
                "name": "ParameterList",
                "src": "1367:33:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3410,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 3407,
                        "name": "ElementaryTypeName",
                        "src": "1437:4:4"
                      }
                    ],
                    "id": 3408,
                    "name": "VariableDeclaration",
                    "src": "1437:4:4"
                  }
                ],
                "id": 3409,
                "name": "ParameterList",
                "src": "1436:6:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3356,
                      "type": "modifier (bytes32)",
                      "value": "votable"
                    },
                    "id": 3404,
                    "name": "Identifier",
                    "src": "1408:7:4"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3400,
                      "type": "bytes32",
                      "value": "_proposalId"
                    },
                    "id": 3405,
                    "name": "Identifier",
                    "src": "1416:11:4"
                  }
                ],
                "id": 3406,
                "name": "ModifierInvocation",
                "src": "1408:20:4"
              }
            ],
            "id": 3410,
            "name": "FunctionDefinition",
            "src": "1354:89:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": false,
              "implemented": false,
              "isConstructor": false,
              "name": "voteWithSpecifiedAmounts",
              "payable": false,
              "scope": 3459,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3426,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3411,
                        "name": "ElementaryTypeName",
                        "src": "1492:7:4"
                      }
                    ],
                    "id": 3412,
                    "name": "VariableDeclaration",
                    "src": "1492:19:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_vote",
                      "scope": 3426,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 3413,
                        "name": "ElementaryTypeName",
                        "src": "1521:4:4"
                      }
                    ],
                    "id": 3414,
                    "name": "VariableDeclaration",
                    "src": "1521:10:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_rep",
                      "scope": 3426,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 3415,
                        "name": "ElementaryTypeName",
                        "src": "1541:4:4"
                      }
                    ],
                    "id": 3416,
                    "name": "VariableDeclaration",
                    "src": "1541:9:4"
                  },
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_token",
                      "scope": 3426,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 3417,
                        "name": "ElementaryTypeName",
                        "src": "1560:4:4"
                      }
                    ],
                    "id": 3418,
                    "name": "VariableDeclaration",
                    "src": "1560:11:4"
                  }
                ],
                "id": 3419,
                "name": "ParameterList",
                "src": "1482:90:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3426,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 3423,
                        "name": "ElementaryTypeName",
                        "src": "1609:4:4"
                      }
                    ],
                    "id": 3424,
                    "name": "VariableDeclaration",
                    "src": "1609:4:4"
                  }
                ],
                "id": 3425,
                "name": "ParameterList",
                "src": "1608:6:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3356,
                      "type": "modifier (bytes32)",
                      "value": "votable"
                    },
                    "id": 3420,
                    "name": "Identifier",
                    "src": "1580:7:4"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3412,
                      "type": "bytes32",
                      "value": "_proposalId"
                    },
                    "id": 3421,
                    "name": "Identifier",
                    "src": "1588:11:4"
                  }
                ],
                "id": 3422,
                "name": "ModifierInvocation",
                "src": "1580:20:4"
              }
            ],
            "id": 3426,
            "name": "FunctionDefinition",
            "src": "1449:166:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": false,
              "implemented": false,
              "isConstructor": false,
              "name": "cancelVote",
              "payable": false,
              "scope": 3459,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3434,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3427,
                        "name": "ElementaryTypeName",
                        "src": "1641:7:4"
                      }
                    ],
                    "id": 3428,
                    "name": "VariableDeclaration",
                    "src": "1641:19:4"
                  }
                ],
                "id": 3429,
                "name": "ParameterList",
                "src": "1640:21:4"
              },
              {
                "attributes": {
                  "parameters": [
                    null
                  ]
                },
                "children": [],
                "id": 3433,
                "name": "ParameterList",
                "src": "1689:0:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3356,
                      "type": "modifier (bytes32)",
                      "value": "votable"
                    },
                    "id": 3430,
                    "name": "Identifier",
                    "src": "1669:7:4"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3428,
                      "type": "bytes32",
                      "value": "_proposalId"
                    },
                    "id": 3431,
                    "name": "Identifier",
                    "src": "1677:11:4"
                  }
                ],
                "id": 3432,
                "name": "ModifierInvocation",
                "src": "1669:20:4"
              }
            ],
            "id": 3434,
            "name": "FunctionDefinition",
            "src": "1621:69:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": false,
              "implemented": false,
              "isConstructor": false,
              "name": "execute",
              "payable": false,
              "scope": 3459,
              "stateMutability": "nonpayable",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3444,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3435,
                        "name": "ElementaryTypeName",
                        "src": "1947:7:4"
                      }
                    ],
                    "id": 3436,
                    "name": "VariableDeclaration",
                    "src": "1947:19:4"
                  }
                ],
                "id": 3437,
                "name": "ParameterList",
                "src": "1946:21:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3444,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 3441,
                        "name": "ElementaryTypeName",
                        "src": "2004:4:4"
                      }
                    ],
                    "id": 3442,
                    "name": "VariableDeclaration",
                    "src": "2004:4:4"
                  }
                ],
                "id": 3443,
                "name": "ParameterList",
                "src": "2003:6:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3356,
                      "type": "modifier (bytes32)",
                      "value": "votable"
                    },
                    "id": 3438,
                    "name": "Identifier",
                    "src": "1975:7:4"
                  },
                  {
                    "attributes": {
                      "argumentTypes": null,
                      "overloadedDeclarations": [
                        null
                      ],
                      "referencedDeclaration": 3436,
                      "type": "bytes32",
                      "value": "_proposalId"
                    },
                    "id": 3439,
                    "name": "Identifier",
                    "src": "1983:11:4"
                  }
                ],
                "id": 3440,
                "name": "ModifierInvocation",
                "src": "1975:20:4"
              }
            ],
            "id": 3444,
            "name": "FunctionDefinition",
            "src": "1930:80:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": true,
              "implemented": false,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "getNumberOfChoices",
              "payable": false,
              "scope": 3459,
              "stateMutability": "view",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3451,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3445,
                        "name": "ElementaryTypeName",
                        "src": "2044:7:4"
                      }
                    ],
                    "id": 3446,
                    "name": "VariableDeclaration",
                    "src": "2044:19:4"
                  }
                ],
                "id": 3447,
                "name": "ParameterList",
                "src": "2043:21:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3451,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "uint256",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "uint",
                          "type": "uint256"
                        },
                        "id": 3448,
                        "name": "ElementaryTypeName",
                        "src": "2089:4:4"
                      }
                    ],
                    "id": 3449,
                    "name": "VariableDeclaration",
                    "src": "2089:4:4"
                  }
                ],
                "id": 3450,
                "name": "ParameterList",
                "src": "2088:6:4"
              }
            ],
            "id": 3451,
            "name": "FunctionDefinition",
            "src": "2016:79:4"
          },
          {
            "attributes": {
              "body": null,
              "constant": true,
              "implemented": false,
              "isConstructor": false,
              "modifiers": [
                null
              ],
              "name": "isVotable",
              "payable": false,
              "scope": 3459,
              "stateMutability": "view",
              "superFunction": null,
              "visibility": "public"
            },
            "children": [
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "_proposalId",
                      "scope": 3458,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bytes32",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bytes32",
                          "type": "bytes32"
                        },
                        "id": 3452,
                        "name": "ElementaryTypeName",
                        "src": "2120:7:4"
                      }
                    ],
                    "id": 3453,
                    "name": "VariableDeclaration",
                    "src": "2120:19:4"
                  }
                ],
                "id": 3454,
                "name": "ParameterList",
                "src": "2119:21:4"
              },
              {
                "children": [
                  {
                    "attributes": {
                      "constant": false,
                      "name": "",
                      "scope": 3458,
                      "stateVariable": false,
                      "storageLocation": "default",
                      "type": "bool",
                      "value": null,
                      "visibility": "internal"
                    },
                    "children": [
                      {
                        "attributes": {
                          "name": "bool",
                          "type": "bool"
                        },
                        "id": 3455,
                        "name": "ElementaryTypeName",
                        "src": "2165:4:4"
                      }
                    ],
                    "id": 3456,
                    "name": "VariableDeclaration",
                    "src": "2165:4:4"
                  }
                ],
                "id": 3457,
                "name": "ParameterList",
                "src": "2164:6:4"
              }
            ],
            "id": 3458,
            "name": "FunctionDefinition",
            "src": "2101:70:4"
          }
        ],
        "id": 3459,
        "name": "ContractDefinition",
        "src": "82:2091:4"
      }
    ],
    "id": 3460,
    "name": "SourceUnit",
    "src": "0:2174:4"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.18+commit.9cf6e910.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "1.0.1",
  "updatedAt": "2018-02-04T21:57:39.051Z"
}