{
  "contractName": "MockDaoStorage",
  "abi": [
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_version",
          "type": "bytes32"
        }
      ],
      "name": "readProposalVersion",
      "outputs": [
        {
          "name": "_doc",
          "type": "bytes32"
        },
        {
          "name": "_created",
          "type": "uint256"
        },
        {
          "name": "_milestoneFundings",
          "type": "uint256[]"
        },
        {
          "name": "_finalReward",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "resolver",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "closeProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        }
      ],
      "name": "readProposalVotingResult",
      "outputs": [
        {
          "name": "_result",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "getLastProposalVersion",
      "outputs": [
        {
          "name": "_version",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readProposalDraftVotingResult",
      "outputs": [
        {
          "name": "_result",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_stateId",
          "type": "bytes32"
        },
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "getPreviousProposalInState",
      "outputs": [
        {
          "name": "_id",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        },
        {
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "readVote",
      "outputs": [
        {
          "name": "_vote",
          "type": "bool"
        },
        {
          "name": "_weight",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_stateId",
          "type": "bytes32"
        }
      ],
      "name": "getLastProposalInState",
      "outputs": [
        {
          "name": "_id",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        },
        {
          "name": "_result",
          "type": "bool"
        }
      ],
      "name": "setProposalPass",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "getNextProposal",
      "outputs": [
        {
          "name": "_id",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_claimed",
          "type": "bool"
        }
      ],
      "name": "setDraftVotingClaim",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_milestoneId",
          "type": "uint256"
        }
      ],
      "name": "setMilestoneFunded",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_voter",
          "type": "address"
        },
        {
          "name": "_vote",
          "type": "bool"
        },
        {
          "name": "_weight",
          "type": "uint256"
        }
      ],
      "name": "addDraftVote",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        },
        {
          "name": "_time",
          "type": "uint256"
        }
      ],
      "name": "setProposalVotingTime",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "key",
      "outputs": [
        {
          "name": "",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "isDraftClaimed",
      "outputs": [
        {
          "name": "_claimed",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        }
      ],
      "name": "readProposalMilestone",
      "outputs": [
        {
          "name": "_funding",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readProposalCollateralStatus",
      "outputs": [
        {
          "name": "_status",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        },
        {
          "name": "_claimed",
          "type": "bool"
        }
      ],
      "name": "setVotingClaim",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_key",
          "type": "bytes32"
        }
      ],
      "name": "get_contract",
      "outputs": [
        {
          "name": "_contract",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_milestoneId",
          "type": "uint256"
        }
      ],
      "name": "readIfMilestoneFunded",
      "outputs": [
        {
          "name": "_funded",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "finalizeProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_version",
          "type": "bytes32"
        }
      ],
      "name": "getNextProposalVersion",
      "outputs": [
        {
          "name": "_nextVersion",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readProposalDraftVotingTime",
      "outputs": [
        {
          "name": "_start",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readTotalPrlActions",
      "outputs": [
        {
          "name": "_length",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_version",
          "type": "bytes32"
        }
      ],
      "name": "getPreviousProposalVersion",
      "outputs": [
        {
          "name": "_previousVersion",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_hash",
          "type": "bytes32"
        },
        {
          "name": "_voter",
          "type": "address"
        },
        {
          "name": "_index",
          "type": "uint256"
        }
      ],
      "name": "commitVote",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        },
        {
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "readComittedVote",
      "outputs": [
        {
          "name": "_commitHash",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readProposalProposer",
      "outputs": [
        {
          "name": "_proposer",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "getPreviousProposal",
      "outputs": [
        {
          "name": "_id",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readProposalFunding",
      "outputs": [
        {
          "name": "_fundings",
          "type": "uint256[]"
        },
        {
          "name": "_finalReward",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        }
      ],
      "name": "readPrlAction",
      "outputs": [
        {
          "name": "_actionId",
          "type": "uint256"
        },
        {
          "name": "_time",
          "type": "uint256"
        },
        {
          "name": "_doc",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_result",
          "type": "bool"
        }
      ],
      "name": "setProposalDraftPass",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        }
      ],
      "name": "isClaimed",
      "outputs": [
        {
          "name": "_claimed",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_amount",
          "type": "uint256"
        }
      ],
      "name": "setProposalCollateralAmount",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "archiveProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_doc",
          "type": "bytes32"
        },
        {
          "name": "_proposer",
          "type": "address"
        },
        {
          "name": "_milestoneFundings",
          "type": "uint256[]"
        },
        {
          "name": "_finalReward",
          "type": "uint256"
        },
        {
          "name": "_isFounder",
          "type": "bool"
        }
      ],
      "name": "addProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        },
        {
          "name": "_allUsers",
          "type": "address[]"
        }
      ],
      "name": "readVotingCount",
      "outputs": [
        {
          "name": "_for",
          "type": "uint256"
        },
        {
          "name": "_against",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_voter",
          "type": "address"
        },
        {
          "name": "_vote",
          "type": "bool"
        },
        {
          "name": "_weight",
          "type": "uint256"
        },
        {
          "name": "_index",
          "type": "uint256"
        }
      ],
      "name": "revealVote",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_stateId",
          "type": "bytes32"
        },
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "getNextProposalInState",
      "outputs": [
        {
          "name": "_id",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_endorser",
          "type": "address"
        }
      ],
      "name": "updateProposalEndorse",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        }
      ],
      "name": "readProposalVotingTime",
      "outputs": [
        {
          "name": "_start",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_allUsers",
          "type": "address[]"
        }
      ],
      "name": "readDraftVotingCount",
      "outputs": [
        {
          "name": "_for",
          "type": "uint256"
        },
        {
          "name": "_against",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_action",
          "type": "uint256"
        },
        {
          "name": "_doc",
          "type": "bytes32"
        },
        {
          "name": "_time",
          "type": "uint256"
        }
      ],
      "name": "updateProposalPRL",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_newMilestoneFundings",
          "type": "uint256[]"
        },
        {
          "name": "_finalReward",
          "type": "uint256"
        }
      ],
      "name": "changeFundings",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_status",
          "type": "uint256"
        }
      ],
      "name": "setProposalCollateralStatus",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getFirstProposal",
      "outputs": [
        {
          "name": "_id",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readProposal",
      "outputs": [
        {
          "name": "_doc",
          "type": "bytes32"
        },
        {
          "name": "_proposer",
          "type": "address"
        },
        {
          "name": "_endorser",
          "type": "address"
        },
        {
          "name": "_state",
          "type": "bytes32"
        },
        {
          "name": "_timeCreated",
          "type": "uint256"
        },
        {
          "name": "_nVersions",
          "type": "uint256"
        },
        {
          "name": "_latestVersionDoc",
          "type": "bytes32"
        },
        {
          "name": "_finalVersion",
          "type": "bytes32"
        },
        {
          "name": "_pausedOrStopped",
          "type": "bool"
        },
        {
          "name": "_isDigixProposal",
          "type": "bool"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "CONTRACT_ADDRESS",
      "outputs": [
        {
          "name": "",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readProposalDocs",
      "outputs": [
        {
          "name": "_moreDocs",
          "type": "bytes32[]"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_voter",
          "type": "address"
        }
      ],
      "name": "readDraftVote",
      "outputs": [
        {
          "name": "_vote",
          "type": "bool"
        },
        {
          "name": "_weight",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_time",
          "type": "uint256"
        }
      ],
      "name": "setProposalDraftVotingTime",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "getFirstProposalVersion",
      "outputs": [
        {
          "name": "_version",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_stateId",
          "type": "bytes32"
        }
      ],
      "name": "getFirstProposalInState",
      "outputs": [
        {
          "name": "_id",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_index",
          "type": "uint256"
        },
        {
          "name": "_allUsers",
          "type": "address[]"
        },
        {
          "name": "_vote",
          "type": "bool"
        }
      ],
      "name": "readVotingRoundVotes",
      "outputs": [
        {
          "name": "_voters",
          "type": "address[]"
        },
        {
          "name": "_length",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        }
      ],
      "name": "readProposalCollateralAmount",
      "outputs": [
        {
          "name": "_amount",
          "type": "uint256"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_newDoc",
          "type": "bytes32"
        }
      ],
      "name": "addProposalDoc",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": true,
      "inputs": [],
      "name": "getLastProposal",
      "outputs": [
        {
          "name": "_id",
          "type": "bytes32"
        }
      ],
      "payable": false,
      "stateMutability": "view",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_newDoc",
          "type": "bytes32"
        },
        {
          "name": "_newMilestoneFundings",
          "type": "uint256[]"
        },
        {
          "name": "_finalReward",
          "type": "uint256"
        }
      ],
      "name": "editProposal",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "inputs": [
        {
          "name": "_resolver",
          "type": "address"
        }
      ],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "constructor"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_roundIndex",
          "type": "uint256"
        },
        {
          "name": "_isDraftPhase",
          "type": "bool"
        },
        {
          "name": "_proposer",
          "type": "address"
        },
        {
          "name": "_endorser",
          "type": "address"
        },
        {
          "name": "_milestonesFundings",
          "type": "uint256[]"
        },
        {
          "name": "_finalReward",
          "type": "uint256"
        }
      ],
      "name": "mock_put_proposal_as",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_milestoneId",
          "type": "uint256"
        },
        {
          "name": "_proposer",
          "type": "address"
        },
        {
          "name": "_endorser",
          "type": "address"
        },
        {
          "name": "_milestonesFundings",
          "type": "uint256[]"
        },
        {
          "name": "_finalReward",
          "type": "uint256"
        },
        {
          "name": "_previousVotingStart",
          "type": "uint256"
        }
      ],
      "name": "mock_put_proposal_in_milestone",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    },
    {
      "constant": false,
      "inputs": [
        {
          "name": "_proposalId",
          "type": "bytes32"
        },
        {
          "name": "_roundIndex",
          "type": "uint256"
        },
        {
          "name": "_isDraftPhase",
          "type": "bool"
        },
        {
          "name": "_voters",
          "type": "address[]"
        },
        {
          "name": "_votes",
          "type": "bool[]"
        },
        {
          "name": "_weights",
          "type": "uint256[]"
        },
        {
          "name": "_length",
          "type": "uint256"
        },
        {
          "name": "_startOfVotingRound",
          "type": "uint256"
        }
      ],
      "name": "mock_put_past_votes",
      "outputs": [],
      "payable": false,
      "stateMutability": "nonpayable",
      "type": "function"
    }
  ],
  "bytecode": "0x608060405260006001026003906000191690556000600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055507f70726f706f73616c5f73746174655f70726570726f706f73616c0000000000006005906000191690557f70726f706f73616c5f73746174655f64726166740000000000000000000000006006906000191690557f70726f706f73616c5f73746174655f6d6f6465726174656400000000000000006007906000191690557f70726f706f73616c5f73746174655f6f6e676f696e67000000000000000000006008906000191690557f70726f706f73616c5f73746174655f636c6f73656400000000000000000000006009906000191690557f70726f706f73616c5f73746174655f6172636869766564000000000000000000600a906000191690556001600b556002600c556003600d556001600e556002600f5560036010557f696e7465725f6467645f696400000000000000000000000000000000000000006011906000191690557f696e7465725f6d6f645f6467645f6964000000000000000000000000000000006012906000191690557f696e7465725f626f6e75735f63616c63756c6174696f6e5f69640000000000006013906000191690557f64616f00000000000000000000000000000000000000000000000000000000006014906000191690557f64616f3a7370656369616c3a70726f706f73616c0000000000000000000000006015906000191690557f64616f3a7374616b652d6c6f636b696e670000000000000000000000000000006016906000191690557f64616f3a766f74696e67000000000000000000000000000000000000000000006017906000191690557f64616f3a766f74696e673a636c61696d730000000000000000000000000000006018906000191690557f64616f3a73766f74696e673a636c61696d7300000000000000000000000000006019906000191690557f64616f3a6964656e746974790000000000000000000000000000000000000000601a906000191690557f64616f3a726577617264732d6d616e6167657200000000000000000000000000601b906000191690557f64616f3a726577617264732d6578747261730000000000000000000000000000601c906000191690557f64616f3a726f6c65730000000000000000000000000000000000000000000000601d906000191690557f64616f3a66756e64696e672d6d616e6167657200000000000000000000000000601e906000191690557f64616f3a77686974656c697374696e6700000000000000000000000000000000601f906000191690557f64616f3a696e666f726d6174696f6e00000000000000000000000000000000006020906000191690557f736572766963653a726f6c6500000000000000000000000000000000000000006021906000191690557f736572766963653a64616f3a696e666f000000000000000000000000000000006022906000191690557f736572766963653a64616f3a6c697374696e67000000000000000000000000006023906000191690557f736572766963653a64616f3a63616c63756c61746f72000000000000000000006024906000191690557f73746f726167653a64616f0000000000000000000000000000000000000000006025906000191690557f73746f726167653a64616f3a636f756e746572000000000000000000000000006026906000191690557f73746f726167653a64616f3a75706772616465000000000000000000000000006027906000191690557f73746f726167653a64616f3a6964656e746974790000000000000000000000006028906000191690557f73746f726167653a64616f3a706f696e747300000000000000000000000000006029906000191690557f73746f726167653a64616f3a7370656369616c00000000000000000000000000602a906000191690557f73746f726167653a64616f3a636f6e6669670000000000000000000000000000602b906000191690557f73746f726167653a64616f3a7374616b65000000000000000000000000000000602c906000191690557f73746f726167653a64616f3a7265776172647300000000000000000000000000602d906000191690557f73746f726167653a64616f3a77686974656c697374696e670000000000000000602e906000191690557f73746f726167653a696e7465726d6564696174653a726573756c747300000000602f906000191690557f743a6467640000000000000000000000000000000000000000000000000000006030906000191690557f743a6467780000000000000000000000000000000000000000000000000000006031906000191690557f743a6261646765000000000000000000000000000000000000000000000000006032906000191690556001603360006101000a81548160ff021916908360ff1602179055506002603360016101000a81548160ff021916908360ff1602179055506003603360026101000a81548160ff021916908360ff1602179055506004603360036101000a81548160ff021916908360ff1602179055506276a7006034557f6d696e5f6467645f7061727469636970616e74000000000000000000000000006035906000191690557f6d696e5f6467645f6d6f64657261746f720000000000000000000000000000006036906000191690557f6d696e5f72657075746174696f6e5f6d6f64657261746f7200000000000000006037906000191690557f6c6f636b696e675f70686173655f6475726174696f6e000000000000000000006038906000191690557f717561727465725f6475726174696f6e000000000000000000000000000000006039906000191690557f766f74696e675f636f6d6d69745f706861736500000000000000000000000000603a906000191690557f766f74696e675f70686173655f746f74616c0000000000000000000000000000603b906000191690557f696e746572696d5f766f74696e675f636f6d6d69745f70686173650000000000603c906000191690557f696e746572696d5f766f74696e675f70686173655f746f74616c000000000000603d906000191690557f64726166745f71756f72756d5f66697865645f6e756d657261746f7200000000603e906000191690557f64726166745f71756f72756d5f66697865645f64656e6f6d696e61746f720000603f906000191690557f64726166745f71756f72756d5f73666163746f725f6e756d657261746f7200006040906000191690557f64726166745f71756f72756d5f73666163746f725f64656e6f6d696e61746f726041906000191690557f766f74655f71756f72756d5f66697865645f6e756d657261746f7200000000006042906000191690557f766f74655f71756f72756d5f66697865645f64656e6f6d696e61746f720000006043906000191690557f766f74655f71756f72756d5f73666163746f725f6e756d657261746f720000006044906000191690557f766f74655f71756f72756d5f73666163746f725f64656e6f6d696e61746f72006045906000191690557f66696e616c5f7265776172645f73666163746f725f6e756d657261746f7200006046906000191690557f66696e616c5f7265776172645f73666163746f725f64656e6f6d696e61746f726047906000191690557f64726166745f71756f74615f6e756d657261746f7200000000000000000000006048906000191690557f64726166745f71756f74615f64656e6f6d696e61746f720000000000000000006049906000191690557f766f74696e675f71756f74615f6e756d657261746f7200000000000000000000604a906000191690557f766f74696e675f71756f74615f64656e6f6d696e61746f720000000000000000604b906000191690557f6d696e696d616c5f717000000000000000000000000000000000000000000000604c906000191690557f717561727465725f706f696e745f7363616c696e675f666163746f7200000000604d906000191690557f7265705f706f696e745f7363616c696e675f666163746f720000000000000000604e906000191690557f6d696e696d616c5f6d6f645f7170000000000000000000000000000000000000604f906000191690557f6d6f645f71705f7363616c696e675f666163746f7200000000000000000000006050906000191690557f6d6f645f7265705f706f696e745f7363616c696e675f666163746f72000000006051906000191690557f717561727465725f706f696e745f64726166745f766f746500000000000000006052906000191690557f717561727465725f706f696e745f766f746500000000000000000000000000006053906000191690557f717561727465725f706f696e745f696e746572696d5f766f74650000000000006054906000191690557f715f705f6d696c6573746f6e655f636f6d706c6574696f6e00000000000000006055906000191690557f626f6e75735f72657075746174696f6e5f6e756d657261746f720000000000006056906000191690557f626f6e75735f72657075746174696f6e5f64656e6f6d696e61746f72000000006057906000191690557f7370656369616c5f70726f706f73616c5f636f6d6d69745f70686173650000006058906000191690557f7370656369616c5f70726f706f73616c5f70686173655f746f74616c000000006059906000191690557f636f6e6669675f7370656369616c5f71756f74615f6e756d657261746f720000605a906000191690557f636f6e6669675f7370656369616c5f71756f74615f64656e6f6d696e61746f72605b906000191690557f7370656369616c5f71756f72756d5f6e756d657261746f720000000000000000605c906000191690557f7370656369616c5f71756f72756d5f64656e6f6d696e61746f72000000000000605d906000191690557f636f6e6669675f6d61785f72657075746174696f6e5f646564756374696f6e00605e906000191690557f636f6e6669675f70756e6973686d656e745f6e6f745f6c6f636b696e67000000605f906000191690557f636f6e6669675f7265705f7065725f65787472615f71705f6e756d00000000006060906000191690557f636f6e6669675f7265705f7065725f65787472615f71705f64656e00000000006061906000191690557f636f6e6669675f6d61785f6d5f72705f646564756374696f6e000000000000006062906000191690557f636f6e6669675f7265705f7065725f65787472615f6d5f71705f6e756d0000006063906000191690557f636f6e6669675f7265705f7065725f65787472615f6d5f71705f64656e0000006064906000191690557f636f6e6669675f6d6f645f706f7274696f6e5f6e756d000000000000000000006065906000191690557f636f6e6669675f6d6f645f706f7274696f6e5f64656e000000000000000000006066906000191690557f636f6e6669675f64726166745f766f74696e675f7068617365000000000000006067906000191690557f636f6e6669675f72705f626f6f73745f7065725f6261646765000000000000006068906000191690557f636f6e6669675f636c61696d696e675f646561646c696e6500000000000000006069906000191690557f636f6e6669675f70726570726f706f73616c5f636f6c6c61746572616c000000606a906000191690557f636f6e6669675f6d61785f66756e64696e675f6e6f6e44696769780000000000606b906000191690557f636f6e6669675f6d61785f6d696c6573746f6e65735f6e6f6e44696769780000606c906000191690557f636f6e6669675f6e6f6e44696769785f70726f706f73616c5f63617000000000606d906000191690557f636f6e6669675f646561645f6475726174696f6e000000000000000000000000606e906000191690557f636f6e6669675f63765f72657075746174696f6e000000000000000000000000606f906000191690553480156200113457600080fd5b50604051602080620072ca833981018060405281019080805190602001909291905050508062001176602554826200118a640100000000026401000000009004565b15156200118257600080fd5b50506200141b565b6000808273ffffffffffffffffffffffffffffffffffffffff16636d19a8826040518163ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401602060405180830381600087803b158015620011f257600080fd5b505af115801562001207573d6000803e3d6000fd5b505050506040513d60208110156200121e57600080fd5b810190808051906020019092919050505090506000151581151514156200140f5730600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550826000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555083600181600019169055506000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663c0f6ef4a600154600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083600019166000191681526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050602060405180830381600087803b158015620013bc57600080fd5b505af1158015620013d1573d6000803e3d6000fd5b505050506040513d6020811015620013e857600080fd5b810190808051906020019092919050505015156200140557600080fd5b6001915062001414565b600091505b5092915050565b615e9f806200142b6000396000f3006080604052600436106102eb576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303020ea9146102f057806304f3bcec146103a1578063078f872c146103f85780630bcaa451146104295780630c012e591461047c5780630ec8f125146104c95780631478fff1146105125780631d2103d11461056d5780631d47c3d3146105e75780631ea5d62f14610634578063237286e91461067b57806327618ad9146106c857806327a9bb0e146107055780632fd010da14610740578063344e436e146107a75780633943380c146107ec578063395ddde91461081f5780633a85b822146108685780633be88369146108b75780633e020d2f146108fc5780633f83acff1461094357806341a71589146109b457806347d0da1414610a0757806347d621a314610a3857806349a428d014610a935780634c5b318a14610ad857806356674c9f14610b1d57806358cec13914610b78578063598f0eaf14610be15780635b712eb614610c58578063689e699914610cc957806370a6f59114610ded5780637246d5a714610e3a5780637aafacae14610ec757806382e445c614610f2c57806385f5276f14610f695780638a2d659714610fbc57806395ecdf9e14610ff7578063a1d444a414611028578063a1e55acf146110a7578063a6129f8c14611115578063a692e0ef14611186578063ac443d9f146111e1578063afe2da7a14611232578063baf4266014611304578063bb3b5f6d14611353578063c004b7de146113b7578063c3093bb11461140a578063c362c7901461145d578063cfd5917214611498578063d8d50179146114cb578063db4ecbc1146115cf578063de233e4214611626578063e14b2c26146116ac578063e2cf05d41461171c578063e3f3f7a2146117f0578063e41566751461182b578063e7853aac14611878578063e81362fe146118c5578063eb82718a14611980578063eef7b8f5146119c5578063f0ab3dd914611a04578063ffec1b2114611a37575b600080fd5b3480156102fc57600080fd5b5061032d60048036038101908080356000191690602001909291908035600019169060200190929190505050611a98565b60405180856000191660001916815260200184815260200180602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561038a57808201518184015260208101905061036f565b505050509050019550505050505060405180910390f35b3480156103ad57600080fd5b506103b6611c05565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561040457600080fd5b506104276004803603810190808035600019169060200190929190505050611c2a565b005b34801561043557600080fd5b50610462600480360381019080803560001916906020019092919080359060200190929190505050611c4c565b604051808215151515815260200191505060405180910390f35b34801561048857600080fd5b506104ab6004803603810190808035600019169060200190929190505050611ca9565b60405180826000191660001916815260200191505060405180910390f35b3480156104d557600080fd5b506104f86004803603810190808035600019169060200190929190505050611cdd565b604051808215151515815260200191505060405180910390f35b34801561051e57600080fd5b5061054f60048036038101908080356000191690602001909291908035600019169060200190929190505050611d28565b60405180826000191660001916815260200191505060405180910390f35b34801561057957600080fd5b506105c6600480360381019080803560001916906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d69565b60405180831515151581526020018281526020019250505060405180910390f35b3480156105f357600080fd5b506106166004803603810190808035600019169060200190929190505050611e9e565b60405180826000191660001916815260200191505060405180910390f35b34801561064057600080fd5b50610679600480360381019080803560001916906020019092919080359060200190929190803515159060200190929190505050611edd565b005b34801561068757600080fd5b506106aa6004803603810190808035600019169060200190929190505050612135565b60405180826000191660001916815260200191505060405180910390f35b3480156106d457600080fd5b506107036004803603810190808035600019169060200190929190803515159060200190929190505050612149565b005b34801561071157600080fd5b5061073e60048036038101908080356000191690602001909291908035906020019092919050505061219c565b005b34801561074c57600080fd5b506107a56004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919080359060200190929190505050612201565b005b3480156107b357600080fd5b506107ea6004803603810190808035600019169060200190929190803590602001909291908035906020019092919050505061240b565b005b3480156107f857600080fd5b50610801612494565b60405180826000191660001916815260200191505060405180910390f35b34801561082b57600080fd5b5061084e600480360381019080803560001916906020019092919050505061249a565b604051808215151515815260200191505060405180910390f35b34801561087457600080fd5b506108a16004803603810190808035600019169060200190929190803590602001909291905050506124d2565b6040518082815260200191505060405180910390f35b3480156108c357600080fd5b506108e660048036038101908080356000191690602001909291905050506125b9565b6040518082815260200191505060405180910390f35b34801561090857600080fd5b506109416004803603810190808035600019169060200190929190803590602001909291908035151590602001909291905050506125f4565b005b34801561094f57600080fd5b506109726004803603810190808035600019169060200190929190505050612659565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156109c057600080fd5b506109ed600480360381019080803560001916906020019092919080359060200190929190505050612735565b604051808215151515815260200191505060405180910390f35b348015610a1357600080fd5b50610a366004803603810190808035600019169060200190929190505050612792565b005b348015610a4457600080fd5b50610a75600480360381019080803560001916906020019092919080356000191690602001909291905050506127da565b60405180826000191660001916815260200191505060405180910390f35b348015610a9f57600080fd5b50610ac26004803603810190808035600019169060200190929190505050612810565b6040518082815260200191505060405180910390f35b348015610ae457600080fd5b50610b07600480360381019080803560001916906020019092919050505061284e565b6040518082815260200191505060405180910390f35b348015610b2957600080fd5b50610b5a60048036038101908080356000191690602001909291908035600019169060200190929190505050612879565b60405180826000191660001916815260200191505060405180910390f35b348015610b8457600080fd5b50610bdf60048036038101908080356000191690602001909291908035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506128af565b005b348015610bed57600080fd5b50610c3a600480360381019080803560001916906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612943565b60405180826000191660001916815260200191505060405180910390f35b348015610c6457600080fd5b50610c8760048036038101908080356000191690602001909291905050506129d1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610cd557600080fd5b50610deb6004803603810190808035600019169060200190929190803590602001909291908035151590602001909291908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019092919080359060200190929190505050612a19565b005b348015610df957600080fd5b50610e1c6004803603810190808035600019169060200190929190505050612be8565b60405180826000191660001916815260200191505060405180910390f35b348015610e4657600080fd5b50610e696004803603810190808035600019169060200190929190505050612bfc565b6040518080602001838152602001828103825284818151815260200191508051906020019060200280838360005b83811015610eb2578082015181840152602081019050610e97565b50505050905001935050505060405180910390f35b348015610ed357600080fd5b50610f00600480360381019080803560001916906020019092919080359060200190929190505050612d1c565b604051808481526020018381526020018260001916600019168152602001935050505060405180910390f35b348015610f3857600080fd5b50610f676004803603810190808035600019169060200190929190803515159060200190929190505050612e31565b005b348015610f7557600080fd5b50610fa260048036038101908080356000191690602001909291908035906020019092919050505061306c565b604051808215151515815260200191505060405180910390f35b348015610fc857600080fd5b50610ff56004803603810190808035600019169060200190929190803590602001909291905050506130b6565b005b34801561100357600080fd5b5061102660048036038101908080356000191690602001909291905050506130f3565b005b34801561103457600080fd5b506110a56004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190820180359060200191909192939192939080359060200190929190803515159060200190929190505050613301565b005b3480156110b357600080fd5b506110f86004803603810190808035600019169060200190929190803590602001909291908035906020019082018035906020019190919293919293905050506136dc565b604051808381526020018281526020019250505060405180910390f35b34801561112157600080fd5b506111846004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291908035906020019092919080359060200190929190505050613803565b005b34801561119257600080fd5b506111c36004803603810190808035600019169060200190929190803560001916906020019092919050505061391b565b60405180826000191660001916815260200191505060405180910390f35b3480156111ed57600080fd5b506112306004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061395c565b005b34801561123e57600080fd5b50611302600480360381019080803560001916906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019092919080359060200190929190505050613b92565b005b34801561131057600080fd5b5061133d6004803603810190808035600019169060200190929190803590602001909291905050506140c2565b6040518082815260200191505060405180910390f35b34801561135f57600080fd5b5061139a6004803603810190808035600019169060200190929190803590602001908201803590602001919091929391929390505050614112565b604051808381526020018281526020019250505060405180910390f35b3480156113c357600080fd5b50611408600480360381019080803560001916906020019092919080359060200190929190803560001916906020019092919080359060200190929190505050614227565b005b34801561141657600080fd5b5061145b6004803603810190808035600019169060200190929190803590602001908201803590602001919091929391929390803590602001909291905050506143ea565b005b34801561146957600080fd5b506114966004803603810190808035600019169060200190929190803590602001909291905050506144cc565b005b3480156114a457600080fd5b506114ad614540565b60405180826000191660001916815260200191505060405180910390f35b3480156114d757600080fd5b506114fa6004803603810190808035600019169060200190929190505050614551565b604051808b600019166000191681526020018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200188600019166000191681526020018781526020018681526020018560001916600019168152602001846000191660001916815260200183151515158152602001821515151581526020019a505050505050505050505060405180910390f35b3480156115db57600080fd5b506115e461464e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561163257600080fd5b506116556004803603810190808035600019169060200190929190505050614674565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561169857808201518184015260208101905061167d565b505050509050019250505060405180910390f35b3480156116b857600080fd5b506116fb6004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050614747565b60405180831515151581526020018281526020019250505060405180910390f35b34801561172857600080fd5b506117ee600480360381019080803560001916906020019092919080359060200190929190803515159060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019092919050505061486a565b005b3480156117fc57600080fd5b5061182960048036038101908080356000191690602001909291908035906020019092919050505061501e565b005b34801561183757600080fd5b5061185a600480360381019080803560001916906020019092919050505061505e565b60405180826000191660001916815260200191505060405180910390f35b34801561188457600080fd5b506118a76004803603810190808035600019169060200190929190505050615092565b60405180826000191660001916815260200191505060405180910390f35b3480156118d157600080fd5b506119226004803603810190808035600019169060200190929190803590602001909291908035906020019082018035906020019190919293919293908035151590602001909291905050506150d1565b6040518080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561196b578082015181840152602081019050611950565b50505050905001935050505060405180910390f35b34801561198c57600080fd5b506119af6004803603810190808035600019169060200190929190505050615260565b6040518082815260200191505060405180910390f35b3480156119d157600080fd5b50611a0260048036038101908080356000191690602001909291908035600019169060200190929190505050615288565b005b348015611a1057600080fd5b50611a19615349565b60405180826000191660001916815260200191505060405180910390f35b348015611a4357600080fd5b50611a96600480360381019080803560001916906020019092919080356000191690602001909291908035906020019082018035906020019190919293919293908035906020019092919050505061535a565b005b600080606060006076600087600019166000191681526020019081526020016000206009016000866000191660001916815260200190815260200160002073__DaoStructs____________________________6310d31f6490916040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060006040518083038186803b158015611b4257600080fd5b505af4158015611b56573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052506080811015611b8057600080fd5b8101908080519060200190929190805190602001909291908051640100000000811115611bac57600080fd5b82810190506020810184811115611bc257600080fd5b8151856020820283011164010000000082111715611bdf57600080fd5b505092919060200180519060200190929190505050935093509350935092959194509250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611c35601454615453565b1515611c4057600080fd5b611c498161555d565b50565b6000611c56615755565b1515611c6157600080fd5b607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060050160009054906101000a900460ff16905092915050565b6000806076600084600019166000191681526020019081526020016000209050611cd58160030161586f565b915050919050565b6000611ce7615755565b1515611cf257600080fd5b607660008360001916600019168152602001908152602001600020600a0160050160009054906101000a900460ff169050919050565b6000611d32615755565b1515611d3d57600080fd5b611d6160776000856000191660001916815260200190815260200160002083615920565b905092915050565b600080611d74615755565b1515611d7f57600080fd5b607660008660001916600019168152602001908152602001600020601001600085815260200190815260200160002073__DaoStructs____________________________634bf150b99091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050604080518083038186803b158015611e4d57600080fd5b505af4158015611e61573d6000803e3d6000fd5b505050506040513d6040811015611e7757600080fd5b81019080805190602001909291908051906020019092919050505091509150935093915050565b6000611ea8615755565b1515611eb357600080fd5b611ed660776000846000191660001916815260200190815260200160002061586f565b9050919050565b611ee8601854615453565b1515611ef357600080fd5b801515611f0857611f038361555d565b6120e6565b60008214156120e557607760006007546000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015611faa57600080fd5b505af4158015611fbe573d6000803e3d6000fd5b505050506040513d6020811015611fd457600080fd5b810190808051906020019092919050505050607760006008546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b15801561207f57600080fd5b505af4158015612093573d6000803e3d6000fd5b505050506040513d60208110156120a957600080fd5b81019080805190602001909291905050505060085460766000856000191660001916815260200190815260200160002060010181600019169055505b5b80607660008560001916600019168152602001908152602001600020601001600084815260200190815260200160002060050160006101000a81548160ff021916908315150217905550505050565b60006121426070836159e2565b9050919050565b612154601854615453565b151561215f57600080fd5b80607660008460001916600019168152602001908152602001600020600a0160050160016101000a81548160ff0219169083151502179055505050565b6121a7601e54615453565b15156121b257600080fd5b6001607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060050160026101000a81548160ff0219169083151502179055505050565b600061220e601754615453565b151561221957600080fd5b60766000866000191660001916815260200190815260200160002090508215612322578181600a0160030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600081600a0160040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111561231d57600081600a0160040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b612404565b8181600a0160040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600081600a0160030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111561240357600081600a0160030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b5050505050565b61244d60606040519081016040528060145460001916600019168152602001601854600019166000191681526020016003546000191660001916815250615aa4565b151561245857600080fd5b80607660008560001916600019168152602001908152602001600020601001600084815260200190815260200160002060000181905550505050565b60015481565b6000607660008360001916600019168152602001908152602001600020600a0160050160019054906101000a900460ff169050919050565b60006124dc615755565b15156124e757600080fd5b60766000846000191660001916815260200190815260200160002073__DaoStructs____________________________631728cc369091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561257657600080fd5b505af415801561258a573d6000803e3d6000fd5b505050506040513d60208110156125a057600080fd5b8101908080519060200190929190505050905092915050565b60006125c3615755565b15156125ce57600080fd5b607660008360001916600019168152602001908152602001600020601101549050919050565b6125ff601854615453565b151561260a57600080fd5b80607660008560001916600019168152602001908152602001600020601001600084815260200190815260200160002060050160016101000a81548160ff021916908315150217905550505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633f83acff836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b1580156126f357600080fd5b505af1158015612707573d6000803e3d6000fd5b505050506040513d602081101561271d57600080fd5b81019080805190602001909291905050509050919050565b600061273f615755565b151561274a57600080fd5b607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060050160029054906101000a900460ff16905092915050565b61279d601454615453565b15156127a857600080fd5b6127b181611ca9565b607660008360001916600019168152602001908152602001600020601301816000191690555050565b600080607660008560001916600019168152602001908152602001600020905061280781600301846159e2565b91505092915050565b600061281a615755565b151561282557600080fd5b607660008360001916600019168152602001908152602001600020600a01600001549050919050565b6000607660008360001916600019168152602001908152602001600020601401805490509050919050565b60008060766000856000191660001916815260200190815260200160002090506128a68160030184615920565b91505092915050565b6128ba601754615453565b15156128c557600080fd5b82607660008660001916600019168152602001908152602001600020601001600083815260200190815260200160002060020160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020816000191690555050505050565b600061294d615755565b151561295857600080fd5b607660008560001916600019168152602001908152602001600020601001600084815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490509392505050565b600060766000836000191660001916815260200190815260200160002060150160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600080607660008b6000191660001916815260200190815260200160002060100160008a815260200190815260200160002091508715612a7857607660008b60001916600019168152602001908152602001600020600a019150612ab0565b82607660008c6000191660001916815260200190815260200160002060100160008b8152602001908152602001600020600001819055505b600090505b83811015612bdc57600115158682815181101515612acf57fe5b9060200190602002015115151415612b5a578481815181101515612aef57fe5b906020019060200201518260030160008984815181101515612b0d57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612bcf565b8481815181101515612b6857fe5b906020019060200201518260040160008984815181101515612b8657fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8080600101915050612ab5565b50505050505050505050565b6000612bf5607083615920565b9050919050565b6060600080612c09615755565b1515612c1457600080fd5b60766000856000191660001916815260200190815260200160002060130154905060035460001916816000191614151515612c4e57600080fd5b60766000856000191660001916815260200190815260200160002060090160008260001916600019168152602001908152602001600020600401805480602002602001604051908101604052809291908181526020018280548015612cd257602002820191906000526020600020905b815481526020019060010190808311612cbe575b505050505092506076600085600019166000191681526020019081526020016000206009016000826000191660001916815260200190815260200160002060030154915050915091565b60008060006060607660008760001916600019168152602001908152602001600020601401805480602002602001604051908101604052809291908181526020016000905b82821015612dba5783829060005260206000209060030201606060405190810160405290816000820154815260200160018201546000191660001916815260200160028201548152505081526020019060010190612d61565b505050509050805185101515612dcf57600080fd5b8085815181101515612ddd57fe5b906020019060200201516040015193508085815181101515612dfb57fe5b906020019060200201516000015192508085815181101515612e1957fe5b90602001906020020151602001519150509250925092565b612e3c601854615453565b1515612e4757600080fd5b80607660008460001916600019168152602001908152602001600020600a0160050160006101000a81548160ff021916908315150217905550801561305e57607760006006546000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015612f1f57600080fd5b505af4158015612f33573d6000803e3d6000fd5b505050506040513d6020811015612f4957600080fd5b810190808051906020019092919050505050607760006007546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015612ff457600080fd5b505af4158015613008573d6000803e3d6000fd5b505050506040513d602081101561301e57600080fd5b8101908080519060200190929190505050506007546076600084600019166000191681526020019081526020016000206001018160001916905550613068565b6130678261555d565b5b5050565b6000607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060050160019054906101000a900460ff16905092915050565b6130c1601454615453565b15156130cc57600080fd5b80607660008460001916600019168152602001908152602001600020601201819055505050565b6000613100601854615453565b151561310b57600080fd5b60766000836000191660001916815260200190815260200160002060010154905060776000826000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156131c357600080fd5b505af41580156131d7573d6000803e3d6000fd5b505050506040513d60208110156131ed57600080fd5b81019080805190602001909291905050505060776000600a546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b15801561329857600080fd5b505af41580156132ac573d6000803e3d6000fd5b505050506040513d60208110156132c257600080fd5b810190808051906020019092919050505050600a5460766000846000191660001916815260200190815260200160002060010181600019169055505050565b61330c601454615453565b151561331757600080fd5b600354600019166076600088600019166000191681526020019081526020016000206000015460001916148015613358575060035460001916866000191614155b151561336357600080fd5b607073__DoublyLinkedList______________________63582f30b49091886040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156133e157600080fd5b505af41580156133f5573d6000803e3d6000fd5b505050506040513d602081101561340b57600080fd5b810190808051906020019092919050505050607760006005546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091886040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156134b657600080fd5b505af41580156134ca573d6000803e3d6000fd5b505050506040513d60208110156134e057600080fd5b8101908080519060200190929190505050508560766000886000191660001916815260200190815260200160002060000181600019169055508460766000886000191660001916815260200190815260200160002060150160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600554607660008860001916600019168152602001908152602001600020600101816000191690555042607660008860001916600019168152602001908152602001600020600201819055508060766000886000191660001916815260200190815260200160002060160160156101000a81548160ff02191690831515021790555060766000876000191660001916815260200190815260200160002073__DaoStructs____________________________63ea496bc99091888787876040518663ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018086815260200185600019166000191681526020018060200183815260200182810382528585828181526020019250602002808284378201915050965050505050505060006040518083038186803b1580156136bc57600080fd5b505af41580156136d0573d6000803e3d6000fd5b50505050505050505050565b6000806136e7615755565b15156136f257600080fd5b607660008760001916600019168152602001908152602001600020601001600086815260200190815260200160002073__DaoStructs____________________________63b31ee28c909186866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018060200182810382528484828181526020019250602002808284378201915050945050505050604080518083038186803b1580156137b157600080fd5b505af41580156137c5573d6000803e3d6000fd5b505050506040513d60408110156137db57600080fd5b8101908080519060200190929190805190602001909291905050509150915094509492505050565b61380e601754615453565b151561381957600080fd5b607660008660001916600019168152602001908152602001600020601001600082815260200190815260200160002073__DaoStructs____________________________631a14c51b90918686866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018315151515815260200182815260200194505050505060006040518083038186803b1580156138fc57600080fd5b505af4158015613910573d6000803e3d6000fd5b505050505050505050565b6000613925615755565b151561393057600080fd5b613954607760008560001916600019168152602001908152602001600020836159e2565b905092915050565b6000613969601454615453565b151561397457600080fd5b6076600084600019166000191681526020019081526020016000209050818160160160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600654816001018160001916905550607760006005546000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015613a7c57600080fd5b505af4158015613a90573d6000803e3d6000fd5b505050506040513d6020811015613aa657600080fd5b810190808051906020019092919050505050607760006006546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015613b5157600080fd5b505af4158015613b65573d6000803e3d6000fd5b505050506040513d6020811015613b7b57600080fd5b810190808051906020019092919050505050505050565b607073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015613c1057600080fd5b505af4158015613c24573d6000803e3d6000fd5b505050506040513d6020811015613c3a57600080fd5b8101908080519060200190929190505050508660766000896000191660001916815260200190815260200160002060000181600019169055508460766000896000191660001916815260200190815260200160002060150160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061012c42036076600089600019166000191681526020019081526020016000206002018190555060766000886000191660001916815260200190815260200160002060030173__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015613d9157600080fd5b505af4158015613da5573d6000803e3d6000fd5b505050506040513d6020811015613dbb57600080fd5b810190808051906020019092919050505050866076600089600019166000191681526020019081526020016000206009016000896000191660001916815260200190815260200160002060000181600019169055504260766000896000191660001916815260200190815260200160002060090160008960001916600019168152602001908152602001600020600101819055508251607660008960001916600019168152602001908152602001600020600901600089600019166000191681526020019081526020016000206002018190555082607660008960001916600019168152602001908152602001600020600901600089600019166000191681526020019081526020016000206004019080519060200190613edd929190615d8f565b508160766000896000191660001916815260200190815260200160002060090160008960001916600019168152602001908152602001600020600301819055508360766000896000191660001916815260200190815260200160002060160160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550866076600089600019166000191681526020019081526020016000206013018160001916905550806076600089600019166000191681526020019081526020016000206010016000888152602001908152602001600020600001819055506001607660008960001916600019168152602001908152602001600020601001600088815260200190815260200160002060050160016101000a81548160ff0219169083151502179055506001607660008960001916600019168152602001908152602001600020601001600088815260200190815260200160002060050160006101000a81548160ff0219169083151502179055506001607660008960001916600019168152602001908152602001600020601001600088815260200190815260200160002060050160026101000a81548160ff02191690831515021790555050505050505050565b60006140cc615755565b15156140d757600080fd5b607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060000154905092915050565b60008061411d615755565b151561412857600080fd5b607660008660001916600019168152602001908152602001600020600a0173__DaoStructs____________________________63b31ee28c909186866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018060200182810382528484828181526020019250602002808284378201915050945050505050604080518083038186803b1580156141d657600080fd5b505af41580156141ea573d6000803e3d6000fd5b505050506040513d604081101561420057600080fd5b81019080805190602001909291908051906020019092919050505091509150935093915050565b61422f615ddc565b61423a601454615453565b151561424557600080fd5b6009546000191660766000876000191660001916815260200190815260200160002060010154600019161415151561427c57600080fd5b818160000181815250508281602001906000191690816000191681525050838160400181815250506076600086600019166000191681526020019081526020016000206014018190806001815401808255809150509060018203906000526020600020906003020160009091929091909150600082015181600001556020820151816001019060001916905560408201518160020155505050600c5484141561435b57600160766000876000191660001916815260200190815260200160002060160160146101000a81548160ff0219169083151502179055506143e3565b600d548414156143a157600060766000876000191660001916815260200190815260200160002060160160146101000a81548160ff0219169083151502179055506143e2565b600160766000876000191660001916815260200190815260200160002060160160146101000a81548160ff0219169083151502179055506143e18561555d565b5b5b5050505050565b60006143f7601454615453565b151561440257600080fd5b6076600086600019166000191681526020019081526020016000206013015490506003546000191681600019161415151561443c57600080fd5b8383607660008860001916600019168152602001908152602001600020600901600084600019166000191681526020019081526020016000206004019190614485929190615e01565b508160766000876000191660001916815260200190815260200160002060090160008360001916600019168152602001908152602001600020600301819055505050505050565b61450e60606040519081016040528060185460001916600019168152602001601e54600019166000191681526020016014546000191660001916815250615aa4565b151561451957600080fd5b80607660008460001916600019168152602001908152602001600020601101819055505050565b600061454c6070615c1b565b905090565b600080600080600080600080600080600061456a615755565b151561457557600080fd5b607660008d60001916600019168152602001908152602001600020905080600001549a508060150160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1699508060160160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169850806001015497508060020154965061460181600301615ccc565b955061460f8160030161586f565b9450806013015493508060160160149054906101000a900460ff1692508060160160159054906101000a900460ff169150509193959799509193959799565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606000607660008460001916600019168152602001908152602001600020601301549050600354600019168160001916141515156146b257600080fd5b6076600084600019166000191681526020019081526020016000206009016000826000191660001916815260200190815260200160002060050180548060200260200160405190810160405280929190818152602001828054801561473a57602002820191906000526020600020905b81546000191681526020019060010190808311614722575b5050505050915050919050565b600080614752615755565b151561475d57600080fd5b607660008560001916600019168152602001908152602001600020600a0173__DaoStructs____________________________634bf150b99091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050604080518083038186803b15801561481a57600080fd5b505af415801561482e573d6000803e3d6000fd5b505050506040513d604081101561484457600080fd5b810190808051906020019092919080519060200190929190505050915091509250929050565b607073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156148e857600080fd5b505af41580156148fc573d6000803e3d6000fd5b505050506040513d602081101561491257600080fd5b8101908080519060200190929190505050508660766000896000191660001916815260200190815260200160002060000181600019169055508360766000896000191660001916815260200190815260200160002060150160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550603c42036076600089600019166000191681526020019081526020016000206002018190555060766000886000191660001916815260200190815260200160002060030173__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015614a6857600080fd5b505af4158015614a7c573d6000803e3d6000fd5b505050506040513d6020811015614a9257600080fd5b810190808051906020019092919050505050866076600089600019166000191681526020019081526020016000206009016000896000191660001916815260200190815260200160002060000181600019169055504260766000896000191660001916815260200190815260200160002060090160008960001916600019168152602001908152602001600020600101819055508151607660008960001916600019168152602001908152602001600020600901600089600019166000191681526020019081526020016000206002018190555081607660008960001916600019168152602001908152602001600020600901600089600019166000191681526020019081526020016000206004019080519060200190614bb4929190615d8f565b508060766000896000191660001916815260200190815260200160002060090160008960001916600019168152602001908152602001600020600301819055508260766000896000191660001916815260200190815260200160002060160160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550866076600089600019166000191681526020019081526020016000206013018160001916905550671bc16d674ec80000607660008960001916600019168152602001908152602001600020601201819055508415614dd257607760006006546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015614d4257600080fd5b505af4158015614d56573d6000803e3d6000fd5b505050506040513d6020811015614d6c57600080fd5b810190808051906020019092919050505050600654607660008960001916600019168152602001908152602001600020600101816000191690555042607660008960001916600019168152602001908152602001600020600a0160000181905550615015565b6000861415614ede57607760006007546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015614e7457600080fd5b505af4158015614e88573d6000803e3d6000fd5b505050506040513d6020811015614e9e57600080fd5b8101908080519060200190929190505050506007546076600089600019166000191681526020019081526020016000206001018160001916905550614fdd565b607760006008546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015614f7757600080fd5b505af4158015614f8b573d6000803e3d6000fd5b505050506040513d6020811015614fa157600080fd5b81019080805190602001909291905050505060085460766000896000191660001916815260200190815260200160002060010181600019169055505b426076600089600019166000191681526020019081526020016000206010016000888152602001908152602001600020600001819055505b50505050505050565b615029601454615453565b151561503457600080fd5b80607660008460001916600019168152602001908152602001600020600a01600001819055505050565b600080607660008460001916600019168152602001908152602001600020905061508a81600301615c1b565b915050919050565b600061509c615755565b15156150a757600080fd5b6150ca607760008460001916600019168152602001908152602001600020615c1b565b9050919050565b606060006150dd615755565b15156150e857600080fd5b607660008860001916600019168152602001908152602001600020601001600087815260200190815260200160002073__DaoStructs____________________________63f53380cf90918787876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808581526020018060200183151515158152602001828103825285858281815260200192506020028082843782019150509550505050505060006040518083038186803b1580156151b457600080fd5b505af41580156151c8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060408110156151f257600080fd5b81019080805164010000000081111561520a57600080fd5b8281019050602081018481111561522057600080fd5b815185602082028301116401000000008211171561523d57600080fd5b505092919060200180519060200190929190505050915091509550959350505050565b6000607660008360001916600019168152602001908152602001600020601201549050919050565b6000615295601454615453565b15156152a057600080fd5b607660008460001916600019168152602001908152602001600020601301549050600354600019168160001916141515156152da57600080fd5b60766000846000191660001916815260200190815260200160002060090160008260001916600019168152602001908152602001600020600501829080600181540180825580915050906001820390600052602060002001600090919290919091509060001916905550505050565b6000615355607061586f565b905090565b615365601454615453565b151561537057600080fd5b60766000866000191660001916815260200190815260200160002073__DaoStructs____________________________63ea496bc99091868686866040518663ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018086815260200185600019166000191681526020018060200183815260200182810382528585828181526020019250602002808284378201915050965050505050505060006040518083038186803b15801561543457600080fd5b505af4158015615448573d6000803e3d6000fd5b505050505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633f83acff836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b1580156154ed57600080fd5b505af1158015615501573d6000803e3d6000fd5b505050506040513d602081101561551757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16149050919050565b600060766000836000191660001916815260200190815260200160002060010154905060776000826000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b15801561561757600080fd5b505af415801561562b573d6000803e3d6000fd5b505050506040513d602081101561564157600080fd5b810190808051906020019092919050505050607760006009546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156156ec57600080fd5b505af4158015615700573d6000803e3d6000fd5b505050506040513d602081101561571657600080fd5b81019080805190602001909291905050505060095460766000846000191660001916815260200190815260200160002060010181600019169055505050565b60003273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061586a5750615794615d7d565b73ffffffffffffffffffffffffffffffffffffffff16639b19251a336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561582e57600080fd5b505af1158015615842573d6000803e3d6000fd5b505050506040513d602081101561585857600080fd5b81019080805190602001909291905050505b905090565b60008173__DoublyLinkedList______________________632553148290916040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b1580156158de57600080fd5b505af41580156158f2573d6000803e3d6000fd5b505050506040513d602081101561590857600080fd5b81019080805190602001909291905050509050919050565b60008273__DoublyLinkedList______________________632a1441789091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b15801561599f57600080fd5b505af41580156159b3573d6000803e3d6000fd5b505050506040513d60208110156159c957600080fd5b8101908080519060200190929190505050905092915050565b60008273__DoublyLinkedList______________________63cf06689d9091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015615a6157600080fd5b505af4158015615a75573d6000803e3d6000fd5b505050506040513d6020811015615a8b57600080fd5b8101908080519060200190929190505050905092915050565b600080600060039150600090505b81811015615c14576000600102600019168482600381101515615ad157fe5b6020020151600019161415615ae557615c07565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633f83acff8583600381101515615b3057fe5b60200201516040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b158015615b8f57600080fd5b505af1158015615ba3573d6000803e3d6000fd5b505050506040513d6020811015615bb957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415615c065760019250615c14565b5b8080600101915050615ab2565b5050919050565b60008173__DoublyLinkedList______________________6356717c7990916040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b158015615c8a57600080fd5b505af4158015615c9e573d6000803e3d6000fd5b505050506040513d6020811015615cb457600080fd5b81019080805190602001909291905050509050919050565b60008173__DoublyLinkedList______________________630f77955290916040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b158015615d3b57600080fd5b505af4158015615d4f573d6000803e3d6000fd5b505050506040513d6020811015615d6557600080fd5b81019080805190602001909291905050509050919050565b6000615d8a602e54612659565b905090565b828054828255906000526020600020908101928215615dcb579160200282015b82811115615dca578251825591602001919060010190615daf565b5b509050615dd89190615e4e565b5090565b6060604051908101604052806000815260200160008019168152602001600081525090565b828054828255906000526020600020908101928215615e3d579160200282015b82811115615e3c578235825591602001919060010190615e21565b5b509050615e4a9190615e4e565b5090565b615e7091905b80821115615e6c576000816000905550600101615e54565b5090565b905600a165627a7a72305820000588ff5e97c167476f7e6fdbde832736584b7a77abddb6a613ef85d911d5cd0029",
  "deployedBytecode": "0x6080604052600436106102eb576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806303020ea9146102f057806304f3bcec146103a1578063078f872c146103f85780630bcaa451146104295780630c012e591461047c5780630ec8f125146104c95780631478fff1146105125780631d2103d11461056d5780631d47c3d3146105e75780631ea5d62f14610634578063237286e91461067b57806327618ad9146106c857806327a9bb0e146107055780632fd010da14610740578063344e436e146107a75780633943380c146107ec578063395ddde91461081f5780633a85b822146108685780633be88369146108b75780633e020d2f146108fc5780633f83acff1461094357806341a71589146109b457806347d0da1414610a0757806347d621a314610a3857806349a428d014610a935780634c5b318a14610ad857806356674c9f14610b1d57806358cec13914610b78578063598f0eaf14610be15780635b712eb614610c58578063689e699914610cc957806370a6f59114610ded5780637246d5a714610e3a5780637aafacae14610ec757806382e445c614610f2c57806385f5276f14610f695780638a2d659714610fbc57806395ecdf9e14610ff7578063a1d444a414611028578063a1e55acf146110a7578063a6129f8c14611115578063a692e0ef14611186578063ac443d9f146111e1578063afe2da7a14611232578063baf4266014611304578063bb3b5f6d14611353578063c004b7de146113b7578063c3093bb11461140a578063c362c7901461145d578063cfd5917214611498578063d8d50179146114cb578063db4ecbc1146115cf578063de233e4214611626578063e14b2c26146116ac578063e2cf05d41461171c578063e3f3f7a2146117f0578063e41566751461182b578063e7853aac14611878578063e81362fe146118c5578063eb82718a14611980578063eef7b8f5146119c5578063f0ab3dd914611a04578063ffec1b2114611a37575b600080fd5b3480156102fc57600080fd5b5061032d60048036038101908080356000191690602001909291908035600019169060200190929190505050611a98565b60405180856000191660001916815260200184815260200180602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561038a57808201518184015260208101905061036f565b505050509050019550505050505060405180910390f35b3480156103ad57600080fd5b506103b6611c05565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561040457600080fd5b506104276004803603810190808035600019169060200190929190505050611c2a565b005b34801561043557600080fd5b50610462600480360381019080803560001916906020019092919080359060200190929190505050611c4c565b604051808215151515815260200191505060405180910390f35b34801561048857600080fd5b506104ab6004803603810190808035600019169060200190929190505050611ca9565b60405180826000191660001916815260200191505060405180910390f35b3480156104d557600080fd5b506104f86004803603810190808035600019169060200190929190505050611cdd565b604051808215151515815260200191505060405180910390f35b34801561051e57600080fd5b5061054f60048036038101908080356000191690602001909291908035600019169060200190929190505050611d28565b60405180826000191660001916815260200191505060405180910390f35b34801561057957600080fd5b506105c6600480360381019080803560001916906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611d69565b60405180831515151581526020018281526020019250505060405180910390f35b3480156105f357600080fd5b506106166004803603810190808035600019169060200190929190505050611e9e565b60405180826000191660001916815260200191505060405180910390f35b34801561064057600080fd5b50610679600480360381019080803560001916906020019092919080359060200190929190803515159060200190929190505050611edd565b005b34801561068757600080fd5b506106aa6004803603810190808035600019169060200190929190505050612135565b60405180826000191660001916815260200191505060405180910390f35b3480156106d457600080fd5b506107036004803603810190808035600019169060200190929190803515159060200190929190505050612149565b005b34801561071157600080fd5b5061073e60048036038101908080356000191690602001909291908035906020019092919050505061219c565b005b34801561074c57600080fd5b506107a56004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080351515906020019092919080359060200190929190505050612201565b005b3480156107b357600080fd5b506107ea6004803603810190808035600019169060200190929190803590602001909291908035906020019092919050505061240b565b005b3480156107f857600080fd5b50610801612494565b60405180826000191660001916815260200191505060405180910390f35b34801561082b57600080fd5b5061084e600480360381019080803560001916906020019092919050505061249a565b604051808215151515815260200191505060405180910390f35b34801561087457600080fd5b506108a16004803603810190808035600019169060200190929190803590602001909291905050506124d2565b6040518082815260200191505060405180910390f35b3480156108c357600080fd5b506108e660048036038101908080356000191690602001909291905050506125b9565b6040518082815260200191505060405180910390f35b34801561090857600080fd5b506109416004803603810190808035600019169060200190929190803590602001909291908035151590602001909291905050506125f4565b005b34801561094f57600080fd5b506109726004803603810190808035600019169060200190929190505050612659565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b3480156109c057600080fd5b506109ed600480360381019080803560001916906020019092919080359060200190929190505050612735565b604051808215151515815260200191505060405180910390f35b348015610a1357600080fd5b50610a366004803603810190808035600019169060200190929190505050612792565b005b348015610a4457600080fd5b50610a75600480360381019080803560001916906020019092919080356000191690602001909291905050506127da565b60405180826000191660001916815260200191505060405180910390f35b348015610a9f57600080fd5b50610ac26004803603810190808035600019169060200190929190505050612810565b6040518082815260200191505060405180910390f35b348015610ae457600080fd5b50610b07600480360381019080803560001916906020019092919050505061284e565b6040518082815260200191505060405180910390f35b348015610b2957600080fd5b50610b5a60048036038101908080356000191690602001909291908035600019169060200190929190505050612879565b60405180826000191660001916815260200191505060405180910390f35b348015610b8457600080fd5b50610bdf60048036038101908080356000191690602001909291908035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506128af565b005b348015610bed57600080fd5b50610c3a600480360381019080803560001916906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612943565b60405180826000191660001916815260200191505060405180910390f35b348015610c6457600080fd5b50610c8760048036038101908080356000191690602001909291905050506129d1565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b348015610cd557600080fd5b50610deb6004803603810190808035600019169060200190929190803590602001909291908035151590602001909291908035906020019082018035906020019080806020026020016040519081016040528093929190818152602001838360200280828437820191505050505050919291929080359060200190820180359060200190808060200260200160405190810160405280939291908181526020018383602002808284378201915050505050509192919290803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019092919080359060200190929190505050612a19565b005b348015610df957600080fd5b50610e1c6004803603810190808035600019169060200190929190505050612be8565b60405180826000191660001916815260200191505060405180910390f35b348015610e4657600080fd5b50610e696004803603810190808035600019169060200190929190505050612bfc565b6040518080602001838152602001828103825284818151815260200191508051906020019060200280838360005b83811015610eb2578082015181840152602081019050610e97565b50505050905001935050505060405180910390f35b348015610ed357600080fd5b50610f00600480360381019080803560001916906020019092919080359060200190929190505050612d1c565b604051808481526020018381526020018260001916600019168152602001935050505060405180910390f35b348015610f3857600080fd5b50610f676004803603810190808035600019169060200190929190803515159060200190929190505050612e31565b005b348015610f7557600080fd5b50610fa260048036038101908080356000191690602001909291908035906020019092919050505061306c565b604051808215151515815260200191505060405180910390f35b348015610fc857600080fd5b50610ff56004803603810190808035600019169060200190929190803590602001909291905050506130b6565b005b34801561100357600080fd5b5061102660048036038101908080356000191690602001909291905050506130f3565b005b34801561103457600080fd5b506110a56004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190820180359060200191909192939192939080359060200190929190803515159060200190929190505050613301565b005b3480156110b357600080fd5b506110f86004803603810190808035600019169060200190929190803590602001909291908035906020019082018035906020019190919293919293905050506136dc565b604051808381526020018281526020019250505060405180910390f35b34801561112157600080fd5b506111846004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035151590602001909291908035906020019092919080359060200190929190505050613803565b005b34801561119257600080fd5b506111c36004803603810190808035600019169060200190929190803560001916906020019092919050505061391b565b60405180826000191660001916815260200191505060405180910390f35b3480156111ed57600080fd5b506112306004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061395c565b005b34801561123e57600080fd5b50611302600480360381019080803560001916906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019092919080359060200190929190505050613b92565b005b34801561131057600080fd5b5061133d6004803603810190808035600019169060200190929190803590602001909291905050506140c2565b6040518082815260200191505060405180910390f35b34801561135f57600080fd5b5061139a6004803603810190808035600019169060200190929190803590602001908201803590602001919091929391929390505050614112565b604051808381526020018281526020019250505060405180910390f35b3480156113c357600080fd5b50611408600480360381019080803560001916906020019092919080359060200190929190803560001916906020019092919080359060200190929190505050614227565b005b34801561141657600080fd5b5061145b6004803603810190808035600019169060200190929190803590602001908201803590602001919091929391929390803590602001909291905050506143ea565b005b34801561146957600080fd5b506114966004803603810190808035600019169060200190929190803590602001909291905050506144cc565b005b3480156114a457600080fd5b506114ad614540565b60405180826000191660001916815260200191505060405180910390f35b3480156114d757600080fd5b506114fa6004803603810190808035600019169060200190929190505050614551565b604051808b600019166000191681526020018a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200188600019166000191681526020018781526020018681526020018560001916600019168152602001846000191660001916815260200183151515158152602001821515151581526020019a505050505050505050505060405180910390f35b3480156115db57600080fd5b506115e461464e565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561163257600080fd5b506116556004803603810190808035600019169060200190929190505050614674565b6040518080602001828103825283818151815260200191508051906020019060200280838360005b8381101561169857808201518184015260208101905061167d565b505050509050019250505060405180910390f35b3480156116b857600080fd5b506116fb6004803603810190808035600019169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050614747565b60405180831515151581526020018281526020019250505060405180910390f35b34801561172857600080fd5b506117ee600480360381019080803560001916906020019092919080359060200190929190803515159060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001908201803590602001908080602002602001604051908101604052809392919081815260200183836020028082843782019150505050505091929192908035906020019092919050505061486a565b005b3480156117fc57600080fd5b5061182960048036038101908080356000191690602001909291908035906020019092919050505061501e565b005b34801561183757600080fd5b5061185a600480360381019080803560001916906020019092919050505061505e565b60405180826000191660001916815260200191505060405180910390f35b34801561188457600080fd5b506118a76004803603810190808035600019169060200190929190505050615092565b60405180826000191660001916815260200191505060405180910390f35b3480156118d157600080fd5b506119226004803603810190808035600019169060200190929190803590602001909291908035906020019082018035906020019190919293919293908035151590602001909291905050506150d1565b6040518080602001838152602001828103825284818151815260200191508051906020019060200280838360005b8381101561196b578082015181840152602081019050611950565b50505050905001935050505060405180910390f35b34801561198c57600080fd5b506119af6004803603810190808035600019169060200190929190505050615260565b6040518082815260200191505060405180910390f35b3480156119d157600080fd5b50611a0260048036038101908080356000191690602001909291908035600019169060200190929190505050615288565b005b348015611a1057600080fd5b50611a19615349565b60405180826000191660001916815260200191505060405180910390f35b348015611a4357600080fd5b50611a96600480360381019080803560001916906020019092919080356000191690602001909291908035906020019082018035906020019190919293919293908035906020019092919050505061535a565b005b600080606060006076600087600019166000191681526020019081526020016000206009016000866000191660001916815260200190815260200160002073__DaoStructs____________________________6310d31f6490916040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060006040518083038186803b158015611b4257600080fd5b505af4158015611b56573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052506080811015611b8057600080fd5b8101908080519060200190929190805190602001909291908051640100000000811115611bac57600080fd5b82810190506020810184811115611bc257600080fd5b8151856020820283011164010000000082111715611bdf57600080fd5b505092919060200180519060200190929190505050935093509350935092959194509250565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b611c35601454615453565b1515611c4057600080fd5b611c498161555d565b50565b6000611c56615755565b1515611c6157600080fd5b607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060050160009054906101000a900460ff16905092915050565b6000806076600084600019166000191681526020019081526020016000209050611cd58160030161586f565b915050919050565b6000611ce7615755565b1515611cf257600080fd5b607660008360001916600019168152602001908152602001600020600a0160050160009054906101000a900460ff169050919050565b6000611d32615755565b1515611d3d57600080fd5b611d6160776000856000191660001916815260200190815260200160002083615920565b905092915050565b600080611d74615755565b1515611d7f57600080fd5b607660008660001916600019168152602001908152602001600020601001600085815260200190815260200160002073__DaoStructs____________________________634bf150b99091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050604080518083038186803b158015611e4d57600080fd5b505af4158015611e61573d6000803e3d6000fd5b505050506040513d6040811015611e7757600080fd5b81019080805190602001909291908051906020019092919050505091509150935093915050565b6000611ea8615755565b1515611eb357600080fd5b611ed660776000846000191660001916815260200190815260200160002061586f565b9050919050565b611ee8601854615453565b1515611ef357600080fd5b801515611f0857611f038361555d565b6120e6565b60008214156120e557607760006007546000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015611faa57600080fd5b505af4158015611fbe573d6000803e3d6000fd5b505050506040513d6020811015611fd457600080fd5b810190808051906020019092919050505050607760006008546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b15801561207f57600080fd5b505af4158015612093573d6000803e3d6000fd5b505050506040513d60208110156120a957600080fd5b81019080805190602001909291905050505060085460766000856000191660001916815260200190815260200160002060010181600019169055505b5b80607660008560001916600019168152602001908152602001600020601001600084815260200190815260200160002060050160006101000a81548160ff021916908315150217905550505050565b60006121426070836159e2565b9050919050565b612154601854615453565b151561215f57600080fd5b80607660008460001916600019168152602001908152602001600020600a0160050160016101000a81548160ff0219169083151502179055505050565b6121a7601e54615453565b15156121b257600080fd5b6001607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060050160026101000a81548160ff0219169083151502179055505050565b600061220e601754615453565b151561221957600080fd5b60766000866000191660001916815260200190815260200160002090508215612322578181600a0160030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600081600a0160040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111561231d57600081600a0160040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b612404565b8181600a0160040160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600081600a0160030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054111561240357600081600a0160030160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5b5050505050565b61244d60606040519081016040528060145460001916600019168152602001601854600019166000191681526020016003546000191660001916815250615aa4565b151561245857600080fd5b80607660008560001916600019168152602001908152602001600020601001600084815260200190815260200160002060000181905550505050565b60015481565b6000607660008360001916600019168152602001908152602001600020600a0160050160019054906101000a900460ff169050919050565b60006124dc615755565b15156124e757600080fd5b60766000846000191660001916815260200190815260200160002073__DaoStructs____________________________631728cc369091846040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018281526020019250505060206040518083038186803b15801561257657600080fd5b505af415801561258a573d6000803e3d6000fd5b505050506040513d60208110156125a057600080fd5b8101908080519060200190929190505050905092915050565b60006125c3615755565b15156125ce57600080fd5b607660008360001916600019168152602001908152602001600020601101549050919050565b6125ff601854615453565b151561260a57600080fd5b80607660008560001916600019168152602001908152602001600020601001600084815260200190815260200160002060050160016101000a81548160ff021916908315150217905550505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633f83acff836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b1580156126f357600080fd5b505af1158015612707573d6000803e3d6000fd5b505050506040513d602081101561271d57600080fd5b81019080805190602001909291905050509050919050565b600061273f615755565b151561274a57600080fd5b607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060050160029054906101000a900460ff16905092915050565b61279d601454615453565b15156127a857600080fd5b6127b181611ca9565b607660008360001916600019168152602001908152602001600020601301816000191690555050565b600080607660008560001916600019168152602001908152602001600020905061280781600301846159e2565b91505092915050565b600061281a615755565b151561282557600080fd5b607660008360001916600019168152602001908152602001600020600a01600001549050919050565b6000607660008360001916600019168152602001908152602001600020601401805490509050919050565b60008060766000856000191660001916815260200190815260200160002090506128a68160030184615920565b91505092915050565b6128ba601754615453565b15156128c557600080fd5b82607660008660001916600019168152602001908152602001600020601001600083815260200190815260200160002060020160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020816000191690555050505050565b600061294d615755565b151561295857600080fd5b607660008560001916600019168152602001908152602001600020601001600084815260200190815260200160002060020160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490509392505050565b600060766000836000191660001916815260200190815260200160002060150160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b600080607660008b6000191660001916815260200190815260200160002060100160008a815260200190815260200160002091508715612a7857607660008b60001916600019168152602001908152602001600020600a019150612ab0565b82607660008c6000191660001916815260200190815260200160002060100160008b8152602001908152602001600020600001819055505b600090505b83811015612bdc57600115158682815181101515612acf57fe5b9060200190602002015115151415612b5a578481815181101515612aef57fe5b906020019060200201518260030160008984815181101515612b0d57fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612bcf565b8481815181101515612b6857fe5b906020019060200201518260040160008984815181101515612b8657fe5b9060200190602002015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8080600101915050612ab5565b50505050505050505050565b6000612bf5607083615920565b9050919050565b6060600080612c09615755565b1515612c1457600080fd5b60766000856000191660001916815260200190815260200160002060130154905060035460001916816000191614151515612c4e57600080fd5b60766000856000191660001916815260200190815260200160002060090160008260001916600019168152602001908152602001600020600401805480602002602001604051908101604052809291908181526020018280548015612cd257602002820191906000526020600020905b815481526020019060010190808311612cbe575b505050505092506076600085600019166000191681526020019081526020016000206009016000826000191660001916815260200190815260200160002060030154915050915091565b60008060006060607660008760001916600019168152602001908152602001600020601401805480602002602001604051908101604052809291908181526020016000905b82821015612dba5783829060005260206000209060030201606060405190810160405290816000820154815260200160018201546000191660001916815260200160028201548152505081526020019060010190612d61565b505050509050805185101515612dcf57600080fd5b8085815181101515612ddd57fe5b906020019060200201516040015193508085815181101515612dfb57fe5b906020019060200201516000015192508085815181101515612e1957fe5b90602001906020020151602001519150509250925092565b612e3c601854615453565b1515612e4757600080fd5b80607660008460001916600019168152602001908152602001600020600a0160050160006101000a81548160ff021916908315150217905550801561305e57607760006006546000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015612f1f57600080fd5b505af4158015612f33573d6000803e3d6000fd5b505050506040513d6020811015612f4957600080fd5b810190808051906020019092919050505050607760006007546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015612ff457600080fd5b505af4158015613008573d6000803e3d6000fd5b505050506040513d602081101561301e57600080fd5b8101908080519060200190929190505050506007546076600084600019166000191681526020019081526020016000206001018160001916905550613068565b6130678261555d565b5b5050565b6000607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060050160019054906101000a900460ff16905092915050565b6130c1601454615453565b15156130cc57600080fd5b80607660008460001916600019168152602001908152602001600020601201819055505050565b6000613100601854615453565b151561310b57600080fd5b60766000836000191660001916815260200190815260200160002060010154905060776000826000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156131c357600080fd5b505af41580156131d7573d6000803e3d6000fd5b505050506040513d60208110156131ed57600080fd5b81019080805190602001909291905050505060776000600a546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b15801561329857600080fd5b505af41580156132ac573d6000803e3d6000fd5b505050506040513d60208110156132c257600080fd5b810190808051906020019092919050505050600a5460766000846000191660001916815260200190815260200160002060010181600019169055505050565b61330c601454615453565b151561331757600080fd5b600354600019166076600088600019166000191681526020019081526020016000206000015460001916148015613358575060035460001916866000191614155b151561336357600080fd5b607073__DoublyLinkedList______________________63582f30b49091886040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156133e157600080fd5b505af41580156133f5573d6000803e3d6000fd5b505050506040513d602081101561340b57600080fd5b810190808051906020019092919050505050607760006005546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091886040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156134b657600080fd5b505af41580156134ca573d6000803e3d6000fd5b505050506040513d60208110156134e057600080fd5b8101908080519060200190929190505050508560766000886000191660001916815260200190815260200160002060000181600019169055508460766000886000191660001916815260200190815260200160002060150160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600554607660008860001916600019168152602001908152602001600020600101816000191690555042607660008860001916600019168152602001908152602001600020600201819055508060766000886000191660001916815260200190815260200160002060160160156101000a81548160ff02191690831515021790555060766000876000191660001916815260200190815260200160002073__DaoStructs____________________________63ea496bc99091888787876040518663ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018086815260200185600019166000191681526020018060200183815260200182810382528585828181526020019250602002808284378201915050965050505050505060006040518083038186803b1580156136bc57600080fd5b505af41580156136d0573d6000803e3d6000fd5b50505050505050505050565b6000806136e7615755565b15156136f257600080fd5b607660008760001916600019168152602001908152602001600020601001600086815260200190815260200160002073__DaoStructs____________________________63b31ee28c909186866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018060200182810382528484828181526020019250602002808284378201915050945050505050604080518083038186803b1580156137b157600080fd5b505af41580156137c5573d6000803e3d6000fd5b505050506040513d60408110156137db57600080fd5b8101908080519060200190929190805190602001909291905050509150915094509492505050565b61380e601754615453565b151561381957600080fd5b607660008660001916600019168152602001908152602001600020601001600082815260200190815260200160002073__DaoStructs____________________________631a14c51b90918686866040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808581526020018473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018315151515815260200182815260200194505050505060006040518083038186803b1580156138fc57600080fd5b505af4158015613910573d6000803e3d6000fd5b505050505050505050565b6000613925615755565b151561393057600080fd5b613954607760008560001916600019168152602001908152602001600020836159e2565b905092915050565b6000613969601454615453565b151561397457600080fd5b6076600084600019166000191681526020019081526020016000209050818160160160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600654816001018160001916905550607760006005546000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015613a7c57600080fd5b505af4158015613a90573d6000803e3d6000fd5b505050506040513d6020811015613aa657600080fd5b810190808051906020019092919050505050607760006006546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091856040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015613b5157600080fd5b505af4158015613b65573d6000803e3d6000fd5b505050506040513d6020811015613b7b57600080fd5b810190808051906020019092919050505050505050565b607073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015613c1057600080fd5b505af4158015613c24573d6000803e3d6000fd5b505050506040513d6020811015613c3a57600080fd5b8101908080519060200190929190505050508660766000896000191660001916815260200190815260200160002060000181600019169055508460766000896000191660001916815260200190815260200160002060150160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061012c42036076600089600019166000191681526020019081526020016000206002018190555060766000886000191660001916815260200190815260200160002060030173__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015613d9157600080fd5b505af4158015613da5573d6000803e3d6000fd5b505050506040513d6020811015613dbb57600080fd5b810190808051906020019092919050505050866076600089600019166000191681526020019081526020016000206009016000896000191660001916815260200190815260200160002060000181600019169055504260766000896000191660001916815260200190815260200160002060090160008960001916600019168152602001908152602001600020600101819055508251607660008960001916600019168152602001908152602001600020600901600089600019166000191681526020019081526020016000206002018190555082607660008960001916600019168152602001908152602001600020600901600089600019166000191681526020019081526020016000206004019080519060200190613edd929190615d8f565b508160766000896000191660001916815260200190815260200160002060090160008960001916600019168152602001908152602001600020600301819055508360766000896000191660001916815260200190815260200160002060160160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550866076600089600019166000191681526020019081526020016000206013018160001916905550806076600089600019166000191681526020019081526020016000206010016000888152602001908152602001600020600001819055506001607660008960001916600019168152602001908152602001600020601001600088815260200190815260200160002060050160016101000a81548160ff0219169083151502179055506001607660008960001916600019168152602001908152602001600020601001600088815260200190815260200160002060050160006101000a81548160ff0219169083151502179055506001607660008960001916600019168152602001908152602001600020601001600088815260200190815260200160002060050160026101000a81548160ff02191690831515021790555050505050505050565b60006140cc615755565b15156140d757600080fd5b607660008460001916600019168152602001908152602001600020601001600083815260200190815260200160002060000154905092915050565b60008061411d615755565b151561412857600080fd5b607660008660001916600019168152602001908152602001600020600a0173__DaoStructs____________________________63b31ee28c909186866040518463ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808481526020018060200182810382528484828181526020019250602002808284378201915050945050505050604080518083038186803b1580156141d657600080fd5b505af41580156141ea573d6000803e3d6000fd5b505050506040513d604081101561420057600080fd5b81019080805190602001909291908051906020019092919050505091509150935093915050565b61422f615ddc565b61423a601454615453565b151561424557600080fd5b6009546000191660766000876000191660001916815260200190815260200160002060010154600019161415151561427c57600080fd5b818160000181815250508281602001906000191690816000191681525050838160400181815250506076600086600019166000191681526020019081526020016000206014018190806001815401808255809150509060018203906000526020600020906003020160009091929091909150600082015181600001556020820151816001019060001916905560408201518160020155505050600c5484141561435b57600160766000876000191660001916815260200190815260200160002060160160146101000a81548160ff0219169083151502179055506143e3565b600d548414156143a157600060766000876000191660001916815260200190815260200160002060160160146101000a81548160ff0219169083151502179055506143e2565b600160766000876000191660001916815260200190815260200160002060160160146101000a81548160ff0219169083151502179055506143e18561555d565b5b5b5050505050565b60006143f7601454615453565b151561440257600080fd5b6076600086600019166000191681526020019081526020016000206013015490506003546000191681600019161415151561443c57600080fd5b8383607660008860001916600019168152602001908152602001600020600901600084600019166000191681526020019081526020016000206004019190614485929190615e01565b508160766000876000191660001916815260200190815260200160002060090160008360001916600019168152602001908152602001600020600301819055505050505050565b61450e60606040519081016040528060185460001916600019168152602001601e54600019166000191681526020016014546000191660001916815250615aa4565b151561451957600080fd5b80607660008460001916600019168152602001908152602001600020601101819055505050565b600061454c6070615c1b565b905090565b600080600080600080600080600080600061456a615755565b151561457557600080fd5b607660008d60001916600019168152602001908152602001600020905080600001549a508060150160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1699508060160160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169850806001015497508060020154965061460181600301615ccc565b955061460f8160030161586f565b9450806013015493508060160160149054906101000a900460ff1692508060160160159054906101000a900460ff169150509193959799509193959799565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60606000607660008460001916600019168152602001908152602001600020601301549050600354600019168160001916141515156146b257600080fd5b6076600084600019166000191681526020019081526020016000206009016000826000191660001916815260200190815260200160002060050180548060200260200160405190810160405280929190818152602001828054801561473a57602002820191906000526020600020905b81546000191681526020019060010190808311614722575b5050505050915050919050565b600080614752615755565b151561475d57600080fd5b607660008560001916600019168152602001908152602001600020600a0173__DaoStructs____________________________634bf150b99091856040518363ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808381526020018273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200192505050604080518083038186803b15801561481a57600080fd5b505af415801561482e573d6000803e3d6000fd5b505050506040513d604081101561484457600080fd5b810190808051906020019092919080519060200190929190505050915091509250929050565b607073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156148e857600080fd5b505af41580156148fc573d6000803e3d6000fd5b505050506040513d602081101561491257600080fd5b8101908080519060200190929190505050508660766000896000191660001916815260200190815260200160002060000181600019169055508360766000896000191660001916815260200190815260200160002060150160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550603c42036076600089600019166000191681526020019081526020016000206002018190555060766000886000191660001916815260200190815260200160002060030173__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015614a6857600080fd5b505af4158015614a7c573d6000803e3d6000fd5b505050506040513d6020811015614a9257600080fd5b810190808051906020019092919050505050866076600089600019166000191681526020019081526020016000206009016000896000191660001916815260200190815260200160002060000181600019169055504260766000896000191660001916815260200190815260200160002060090160008960001916600019168152602001908152602001600020600101819055508151607660008960001916600019168152602001908152602001600020600901600089600019166000191681526020019081526020016000206002018190555081607660008960001916600019168152602001908152602001600020600901600089600019166000191681526020019081526020016000206004019080519060200190614bb4929190615d8f565b508060766000896000191660001916815260200190815260200160002060090160008960001916600019168152602001908152602001600020600301819055508260766000896000191660001916815260200190815260200160002060160160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550866076600089600019166000191681526020019081526020016000206013018160001916905550671bc16d674ec80000607660008960001916600019168152602001908152602001600020601201819055508415614dd257607760006006546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015614d4257600080fd5b505af4158015614d56573d6000803e3d6000fd5b505050506040513d6020811015614d6c57600080fd5b810190808051906020019092919050505050600654607660008960001916600019168152602001908152602001600020600101816000191690555042607660008960001916600019168152602001908152602001600020600a0160000181905550615015565b6000861415614ede57607760006007546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015614e7457600080fd5b505af4158015614e88573d6000803e3d6000fd5b505050506040513d6020811015614e9e57600080fd5b8101908080519060200190929190505050506007546076600089600019166000191681526020019081526020016000206001018160001916905550614fdd565b607760006008546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091896040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015614f7757600080fd5b505af4158015614f8b573d6000803e3d6000fd5b505050506040513d6020811015614fa157600080fd5b81019080805190602001909291905050505060085460766000896000191660001916815260200190815260200160002060010181600019169055505b426076600089600019166000191681526020019081526020016000206010016000888152602001908152602001600020600001819055505b50505050505050565b615029601454615453565b151561503457600080fd5b80607660008460001916600019168152602001908152602001600020600a01600001819055505050565b600080607660008460001916600019168152602001908152602001600020905061508a81600301615c1b565b915050919050565b600061509c615755565b15156150a757600080fd5b6150ca607760008460001916600019168152602001908152602001600020615c1b565b9050919050565b606060006150dd615755565b15156150e857600080fd5b607660008860001916600019168152602001908152602001600020601001600087815260200190815260200160002073__DaoStructs____________________________63f53380cf90918787876040518563ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808581526020018060200183151515158152602001828103825285858281815260200192506020028082843782019150509550505050505060006040518083038186803b1580156151b457600080fd5b505af41580156151c8573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f8201168201806040525060408110156151f257600080fd5b81019080805164010000000081111561520a57600080fd5b8281019050602081018481111561522057600080fd5b815185602082028301116401000000008211171561523d57600080fd5b505092919060200180519060200190929190505050915091509550959350505050565b6000607660008360001916600019168152602001908152602001600020601201549050919050565b6000615295601454615453565b15156152a057600080fd5b607660008460001916600019168152602001908152602001600020601301549050600354600019168160001916141515156152da57600080fd5b60766000846000191660001916815260200190815260200160002060090160008260001916600019168152602001908152602001600020600501829080600181540180825580915050906001820390600052602060002001600090919290919091509060001916905550505050565b6000615355607061586f565b905090565b615365601454615453565b151561537057600080fd5b60766000866000191660001916815260200190815260200160002073__DaoStructs____________________________63ea496bc99091868686866040518663ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018086815260200185600019166000191681526020018060200183815260200182810382528585828181526020019250602002808284378201915050965050505050505060006040518083038186803b15801561543457600080fd5b505af4158015615448573d6000803e3d6000fd5b505050505050505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633f83acff836040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b1580156154ed57600080fd5b505af1158015615501573d6000803e3d6000fd5b505050506040513d602081101561551757600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16149050919050565b600060766000836000191660001916815260200190815260200160002060010154905060776000826000191660001916815260200190815260200160002073__DoublyLinkedList______________________6352c6bbf49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b15801561561757600080fd5b505af415801561562b573d6000803e3d6000fd5b505050506040513d602081101561564157600080fd5b810190808051906020019092919050505050607760006009546000191660001916815260200190815260200160002073__DoublyLinkedList______________________63582f30b49091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b1580156156ec57600080fd5b505af4158015615700573d6000803e3d6000fd5b505050506040513d602081101561571657600080fd5b81019080805190602001909291905050505060095460766000846000191660001916815260200190815260200160002060010181600019169055505050565b60003273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16148061586a5750615794615d7d565b73ffffffffffffffffffffffffffffffffffffffff16639b19251a336040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001915050602060405180830381600087803b15801561582e57600080fd5b505af1158015615842573d6000803e3d6000fd5b505050506040513d602081101561585857600080fd5b81019080805190602001909291905050505b905090565b60008173__DoublyLinkedList______________________632553148290916040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b1580156158de57600080fd5b505af41580156158f2573d6000803e3d6000fd5b505050506040513d602081101561590857600080fd5b81019080805190602001909291905050509050919050565b60008273__DoublyLinkedList______________________632a1441789091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b15801561599f57600080fd5b505af41580156159b3573d6000803e3d6000fd5b505050506040513d60208110156159c957600080fd5b8101908080519060200190929190505050905092915050565b60008273__DoublyLinkedList______________________63cf06689d9091846040518363ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018083815260200182600019166000191681526020019250505060206040518083038186803b158015615a6157600080fd5b505af4158015615a75573d6000803e3d6000fd5b505050506040513d6020811015615a8b57600080fd5b8101908080519060200190929190505050905092915050565b600080600060039150600090505b81811015615c14576000600102600019168482600381101515615ad157fe5b6020020151600019161415615ae557615c07565b6000809054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16633f83acff8583600381101515615b3057fe5b60200201516040518263ffffffff167c0100000000000000000000000000000000000000000000000000000000028152600401808260001916600019168152602001915050602060405180830381600087803b158015615b8f57600080fd5b505af1158015615ba3573d6000803e3d6000fd5b505050506040513d6020811015615bb957600080fd5b810190808051906020019092919050505073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161415615c065760019250615c14565b5b8080600101915050615ab2565b5050919050565b60008173__DoublyLinkedList______________________6356717c7990916040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b158015615c8a57600080fd5b505af4158015615c9e573d6000803e3d6000fd5b505050506040513d6020811015615cb457600080fd5b81019080805190602001909291905050509050919050565b60008173__DoublyLinkedList______________________630f77955290916040518263ffffffff167c01000000000000000000000000000000000000000000000000000000000281526004018082815260200191505060206040518083038186803b158015615d3b57600080fd5b505af4158015615d4f573d6000803e3d6000fd5b505050506040513d6020811015615d6557600080fd5b81019080805190602001909291905050509050919050565b6000615d8a602e54612659565b905090565b828054828255906000526020600020908101928215615dcb579160200282015b82811115615dca578251825591602001919060010190615daf565b5b509050615dd89190615e4e565b5090565b6060604051908101604052806000815260200160008019168152602001600081525090565b828054828255906000526020600020908101928215615e3d579160200282015b82811115615e3c578235825591602001919060010190615e21565b5b509050615e4a9190615e4e565b5090565b615e7091905b80821115615e6c576000816000905550600101615e54565b5090565b905600a165627a7a72305820000588ff5e97c167476f7e6fdbde832736584b7a77abddb6a613ef85d911d5cd0029",
  "sourceMap": "66:5755:43:-;;;177:3:3;169:12;;147:34;;;;;;;219:3;187:36;;;;;;;;;;;;;;;;;;;;230:65;;;;;;;;301:53;;;;;;;;360:61;;;;;;;;427:57;;;;;;;;490:55;;;;;;;;551:59;;;;;;;;643:1;617:27;;677:1;650:28;;713:1;684:30;;758:1;721:38;;800:1;765:36;;843:1;807:37;;851:52;;;;;;;;909:66;;;;;;;;981:80;;;;;;;;1097:28;;;;;;;;1131:62;;;;;;;;1199:56;;;;;;;;1261:42;;;;;;;;1309:56;;;;;;;;1371:65;;;;;;;;1442:46;;;;;;;;1494:60;;;;;;;;1560:66;;;;;;;;1632:40;;;;;;;;1678:60;;;;;;;;1744:54;;;;;;;;1804:52;;;;;;;;1888:46;;;;;;;;1940:54;;;;;;;;2000:60;;;;;;;;2066:66;;;;;;;;2164:44;;;;;;;;2214:60;;;;;;;;2280;;;;;;;;2346:62;;;;;;;;2414:58;;;;;;;;2478:60;;;;;;;;2544:58;;;;;;;;2608:56;;;;;;;;2670:60;;;;;;;;2736:70;;;;;;;;2812:78;;;;;;;;2897:36;;;;;;;;2939;;;;;;;;2981:40;;;;;;;;3047:1;3028:20;;;;;;;;;;;;;;;;;;;;3077:1;3054:24;;;;;;;;;;;;;;;;;;;;3103:1;3084:20;;;;;;;;;;;;;;;;;;;;3135:1;3110:26;;;;;;;;;;;;;;;;;;;;3170:7;3143:34;;3184:57;;;;;;;;3247:62;;;;;;;;3315:76;;;;;;;;3398:64;;;;;;;;3468:52;;;;;;;;3526:58;;;;;;;;3590:56;;;;;;;;3652:67;;;;;;;;3725:65;;;;;;;;3797:84;;;;;;;;3887:88;;;;;;;;3981:87;;;;;;;;4074:91;;;;;;;;4171:84;;;;;;;;4261:88;;;;;;;;4355:87;;;;;;;;4448:91;;;;;;;;4545:87;;;;;;;;4638:91;;;;;;;;4736:62;;;;;;;;4804:66;;;;;;;;4876:64;;;;;;;;4946:68;;;;;;;;5021:51;;;;;;;;5078:76;;;;;;;;5160:75;;;;;;;;5242:65;;;;;;;;5313:79;;;;;;;;5398:89;;;;;;;;5494:68;;;;;;;;5568:56;;;;;;;;5630:72;;;;;;;;5740:91;;;;;;;;5838:72;;;;;;;;5916:76;;;;;;;;5999:78;;;;;;;;6083:76;;;;;;;;6166:73;;;;;;;;6245:77;;;;;;;;6329;;;;;;;;6412:81;;;;;;;;6500:79;;;;;;;;6585:75;;;;;;;;6667:74;;;;;;;;6747;;;;;;;;6828:83;;;;;;;;6917:86;;;;;;;;7009;;;;;;;;7102:67;;;;;;;;7175;;;;;;;;7249:63;;;;;;;;7319:77;;;;;;;;7403:66;;;;;;;;7476:71;;;;;;;;7554:72;;;;;;;;7632:78;;;;;;;;7716:82;;;;;;;;7805:62;;;;;;;;7873:68;;;;;;;;166:62:43;8:9:-1;5:2;;;30:1;27;20:12;5:2;166:62:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;215:9;1204:37:60;1209:20;;1231:9;1204:4;;;:37;;;:::i;:::-;1196:46;;;;;;;;1148:101;166:62:43;66:5755;;1530:450:67;1617:13;1640:15;1675:9;1658:42;;;:44;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1658:44:67;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1658:44:67;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1658:44:67;;;;;;;;;;;;;;;;1640:62;;1726:5;1712:19;;:10;:19;;;1708:268;;;1768:4;1741:16;;:32;;;;;;;;;;;;;;;;;;1792:9;1781:8;;:20;;;;;;;;;;;;;;;;;;1815:4;1809:3;:10;;;;;;;1852:8;;;;;;;;;;;1835:49;;;1885:3;;1890:16;;;;;;;;;;;1835:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1835:72:67;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1835:72:67;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1835:72:67;;;;;;;;;;;;;;;;1827:81;;;;;;;;1927:4;1916:15;;1708:268;;;1964:5;1953:16;;1708:268;1530:450;;;;;:::o;66:5755:43:-;;;;;;;",
  "deployedSourceMap": "66:5755:43:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10694:350:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10694:350:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;10694:350:60;;;;;;;;;;;;;;;;;;;;237:23:67;;8:9:-1;5:2;;;30:1;27;20:12;5:2;237:23:67;;;;;;;;;;;;;;;;;;;;;;;;;;;24051:156:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24051:156:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4361:257;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4361:257:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12667:280;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12667:280:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4118:237;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4118:237:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10053:306;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10053:306:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6838:279;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6838:279:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9113:230;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9113:230:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19321:582;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19321:582:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7861:217;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7861:217:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20455:214;;8:9:-1;5:2;;;30:1;27;20:12;5:2;20455:214:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24632:232;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24632:232:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22636:798;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22636:798:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20144:305;;8:9:-1;5:2;;;30:1;27;20:12;5:2;20144:305:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;264:18:67;;8:9:-1;5:2;;;30:1;27;20:12;5:2;264:18:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14169:183:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14169:183:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11751:261;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11751:261:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14567:237;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14567:237:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20675:234;;8:9:-1;5:2;;;30:1;27;20:12;5:2;20675:234:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2380:179:67;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2380:179:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15498:266:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15498:266:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18076:203;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18076:203:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13193:350;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13193:350:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4624:239;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4624:239:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3503:187;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3503:187:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13797:366;;8:9:-1;5:2;;;30:1;27;20:12;5:2;13797:366:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23440:283;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23440:283:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6547:285;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6547:285:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3314:183;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3314:183:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4968:851:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4968:851:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8277:225:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8277:225:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11234:511;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11234:511:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;11234:511:60;;;;;;;;;;;;;;;;;;3696:416;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3696:416:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18771:544;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18771:544:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14358:203;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14358:203:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21192:206;;8:9:-1;5:2;;;30:1;27;20:12;5:2;21192:206:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24213:413;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24213:413:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15853:816;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15853:816:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5421:301;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5421:301:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23729:316;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23729:316:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9547:298;;8:9:-1;5:2;;;30:1;27;20:12;5:2;9547:298:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18285:480;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18285:480:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2806:1525:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2806:1525:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4869:259:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;4869:259:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5134:281;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5134:281:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21404:859;;8:9:-1;5:2;;;30:1;27;20:12;5:2;21404:859:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17113:496;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17113:496:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20915:271;;8:9:-1;5:2;;;30:1;27;20:12;5:2;20915:271:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7240:153;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7240:153:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2240:1068;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2240:1068:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;344:31:67;;8:9:-1;5:2;;;30:1;27;20:12;5:2;344:31:67;;;;;;;;;;;;;;;;;;;;;;;;;;;15159:333:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15159:333:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;15159:333:60;;;;;;;;;;;;;;;;;6069:259;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6069:259:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;812:1988:43;;8:9:-1;5:2;;;30:1;27;20:12;5:2;812:1988:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19909:229:60;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19909:229:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12199:282;;8:9:-1;5:2;;;30:1;27;20:12;5:2;12199:282:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8692:232;;8:9:-1;5:2;;;30:1;27;20:12;5:2;8692:232:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5728:335;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5728:335:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23:1:-1;8:100;33:3;30:1;27:10;8:100;;;99:1;94:3;90:11;84:18;80:1;75:3;71:11;64:39;52:2;49:1;45:10;40:15;;8:100;;;12:14;5728:335:60;;;;;;;;;;;;;;;;;;14810:195;;8:9:-1;5:2;;;30:1;27;20:12;5:2;14810:195:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17676:394;;8:9:-1;5:2;;;30:1;27;20:12;5:2;17676:394:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7515:151;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7515:151:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16675:325;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16675:325:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10694:350;10820:12;10846:16;10876:28;10918:20;10970:13;:26;10984:11;10970:26;;;;;;;;;;;;;;;;;:43;;:53;11014:8;10970:53;;;;;;;;;;;;;;;;;:65;;;;:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;10970:67:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;10970:67:60;;;;;;39:16:-1;36:1;17:17;2:54;10970:67:60;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;13:3;8;5:12;2:2;;;30:1;27;20:12;2:2;10970:67:60;;;;;;;;;;;;;;;;;;;;;;;;20:11:-1;15:3;12:20;9:2;;;45:1;42;35:12;9:2;73:11;68:3;64:21;57:28;;126:4;121:3;117:14;163:9;145:16;142:31;139:2;;;186:1;183;176:12;139:2;224:3;218:10;339:9;333:2;319:12;315:21;297:16;293:44;290:59;268:11;254:12;251:29;239:119;236:2;;;371:1;368;361:12;236:2;0:383;;10970:67:60;;;;;;;;;;;;;;;;;10963:74;;;;;;;;10694:350;;;;;;;:::o;237:23:67:-;;;;;;;;;;;;;:::o;24051:156:60:-;24132:23;24142:12;;24132:9;:23::i;:::-;24124:32;;;;;;;;24166:34;24188:11;24166:21;:34::i;:::-;24051:156;:::o;4361:257::-;4477:12;4513:23;:21;:23::i;:::-;4505:32;;;;;;;;4557:13;:26;4571:11;4557:26;;;;;;;;;;;;;;;;;:39;;:47;4597:6;4557:47;;;;;;;;;;;:54;;;;;;;;;;;;4547:64;;4361:257;;;;:::o;12667:280::-;12765:16;12797:37;12837:13;:26;12851:11;12837:26;;;;;;;;;;;;;;;;;12797:66;;12884:56;12910:9;:29;;12884:25;:56::i;:::-;12873:67;;12667:280;;;;:::o;4118:237::-;4223:12;4259:23;:21;:23::i;:::-;4251:32;;;;;;;;4303:13;:26;4317:11;4303:26;;;;;;;;;;;;;;;;;:38;;:45;;;;;;;;;;;;4293:55;;4118:237;;;:::o;10053:306::-;10173:11;10208:23;:21;:23::i;:::-;10200:32;;;;;;;;10248:104;10291:16;:26;10308:8;10291:26;;;;;;;;;;;;;;;;;10331:11;10248:29;:104::i;:::-;10242:110;;10053:306;;;;:::o;6838:279::-;6954:10;6966:15;7005:23;:21;:23::i;:::-;6997:32;;;;;;;;7046:13;:26;7060:11;7046:26;;;;;;;;;;;;;;;;;:39;;:47;7086:6;7046:47;;;;;;;;;;;:56;;;;7103:6;7046:64;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;7046:64:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;7046:64:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;7046:64:60;;;;;;;;;;;;;;;;;;;;;;;;;7039:71;;;;6838:279;;;;;;:::o;9113:230::-;9208:11;9243:23;:21;:23::i;:::-;9235:32;;;;;;;;9283:53;9309:16;:26;9326:8;9309:26;;;;;;;;;;;;;;;;;9283:25;:53::i;:::-;9277:59;;9113:230;;;:::o;19321:582::-;19434:37;19444:26;;19434:9;:37::i;:::-;19426:46;;;;;;;;19488:7;19487:8;19483:340;;;19511:34;19533:11;19511:21;:34::i;:::-;19483:340;;;19576:1;19566:6;:11;19562:261;;;19593:16;:42;19610:24;;19593:42;;;;;;;;;;;;;;;;;:54;;;;19648:11;19593:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19593:67:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19593:67:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19593:67:60;;;;;;;;;;;;;;;;;19674:16;:40;19691:22;;19674:40;;;;;;;;;;;;;;;;;:47;;;;19722:11;19674:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19674:60:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19674:60:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19674:60:60;;;;;;;;;;;;;;;;;19790:22;;19748:13;:26;19762:11;19748:26;;;;;;;;;;;;;;;;;:39;;:64;;;;;;;19562:261;19483:340;19889:7;19832:13;:26;19846:11;19832:26;;;;;;;;;;;;;;;;;:39;;:47;19872:6;19832:47;;;;;;;;;;;:54;;;:64;;;;;;;;;;;;;;;;;;19321:582;;;:::o;7861:217::-;7952:11;7985:86;8024:12;8050:11;7985:25;:86::i;:::-;7979:92;;7861:217;;;:::o;20455:214::-;20557:37;20567:26;;20557:9;:37::i;:::-;20549:46;;;;;;;;20654:8;20605:13;:26;20619:11;20605:26;;;;;;;;;;;;;;;;;:38;;:46;;;:57;;;;;;;;;;;;;;;;;;20455:214;;:::o;24632:232::-;24740:39;24750:28;;24740:9;:39::i;:::-;24732:48;;;;;;;;24853:4;24790:13;:26;24804:11;24790:26;;;;;;;;;;;;;;;;;:39;;:53;24830:12;24790:53;;;;;;;;;;;:60;;;:67;;;;;;;;;;;;;;;;;;24632:232;;:::o;22636:798::-;22841:37;22799:30;22809:19;;22799:9;:30::i;:::-;22791:39;;;;;;;;22881:13;:26;22895:11;22881:26;;;;;;;;;;;;;;;;;22841:66;;22921:5;22917:511;;;22983:7;22942:9;:21;;:30;;:38;22973:6;22942:38;;;;;;;;;;;;;;;:48;;;;23048:1;23008:9;:21;;:29;;:37;23038:6;23008:37;;;;;;;;;;;;;;;;:41;23004:200;;;23188:1;23148:9;:21;;:29;;:37;23178:6;23148:37;;;;;;;;;;;;;;;:41;;;;23004:200;22917:511;;;23274:7;23234:9;:21;;:29;;:37;23264:6;23234:37;;;;;;;;;;;;;;;:47;;;;23340:1;23299:9;:21;;:30;;:38;23330:6;23299:38;;;;;;;;;;;;;;;;:42;23295:123;;;23402:1;23361:9;:21;;:30;;:38;23392:6;23361:38;;;;;;;;;;;;;;;:42;;;;23295:123;22917:511;22636:798;;;;;:::o;20144:305::-;20294:71;;;;;;;;;;20310:12;;20294:71;;;;;;;;;;20324:26;;20294:71;;;;;;;;;;20352:11;;20294:71;;;;;;;;;:14;:71::i;:::-;20286:80;;;;;;;;20437:5;20377:13;:26;20391:11;20377:26;;;;;;;;;;;;;;;;;:39;;:47;20417:6;20377:47;;;;;;;;;;;:57;;:65;;;;20144:305;;;:::o;264:18:67:-;;;;:::o;14169:183:60:-;14259:13;14299;:26;14313:11;14299:26;;;;;;;;;;;;;;;;;:38;;:46;;;;;;;;;;;;14288:57;;14169:183;;;:::o;11751:261::-;11864:16;11904:23;:21;:23::i;:::-;11896:32;;;;;;;;11949:13;:26;11963:11;11949:26;;;;;;;;;;;;;;;;;:48;;;;11998:6;11949:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;11949:56:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;11949:56:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;11949:56:60;;;;;;;;;;;;;;;;11938:67;;11751:261;;;;:::o;14567:237::-;14671:15;14710:23;:21;:23::i;:::-;14702:32;;;;;;;;14754:13;:26;14768:11;14754:26;;;;;;;;;;;;;;;;;:43;;;14744:53;;14567:237;;;:::o;20675:234::-;20788:37;20798:26;;20788:9;:37::i;:::-;20780:46;;;;;;;;20894:8;20836:13;:26;20850:11;20836:26;;;;;;;;;;;;;;;;;:39;;:47;20876:6;20836:47;;;;;;;;;;;:55;;;:66;;;;;;;;;;;;;;;;;;20675:234;;;:::o;2380:179:67:-;2470:17;2526:8;;;;;;;;;;;2509:39;;;2549:4;2509:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2509:45:67;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2509:45:67;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2509:45:67;;;;;;;;;;;;;;;;2497:57;;2380:179;;;:::o;15498:266:60:-;15617:12;15653:23;:21;:23::i;:::-;15645:32;;;;;;;;15697:13;:26;15711:11;15697:26;;;;;;;;;;;;;;;;;:39;;:53;15737:12;15697:53;;;;;;;;;;;:60;;;;;;;;;;;;15687:70;;15498:266;;;;:::o;18076:203::-;18160:23;18170:12;;18160:9;:23::i;:::-;18152:32;;;;;;;;18237:35;18260:11;18237:22;:35::i;:::-;18195:13;:26;18209:11;18195:26;;;;;;;;;;;;;;;;;:39;;:77;;;;;;;18076:203;:::o;13193:350::-;13309:20;13345:37;13385:13;:26;13399:11;13385:26;;;;;;;;;;;;;;;;;13345:66;;13436:100;13475:9;:29;;13518:8;13436:25;:100::i;:::-;13421:115;;13193:350;;;;;:::o;4624:239::-;4727:14;4765:23;:21;:23::i;:::-;4757:32;;;;;;;;4808:13;:26;4822:11;4808:26;;;;;;;;;;;;;;;;;:38;;:48;;;4799:57;;4624:239;;;:::o;3503:187::-;3598:15;3639:13;:26;3653:11;3639:26;;;;;;;;;;;;;;;;;:37;;:44;;;;3629:54;;3503:187;;;:::o;13797:366::-;13917:24;13957:37;13997:13;:26;14011:11;13997:26;;;;;;;;;;;;;;;;;13957:66;;14052:104;14095:9;:29;;14138:8;14052:29;:104::i;:::-;14033:123;;13797:366;;;;;:::o;23440:283::-;23603:30;23613:19;;23603:9;:30::i;:::-;23595:39;;;;;;;;23711:5;23645:13;:26;23659:11;23645:26;;;;;;;;;;;;;;;;;:39;;:47;23685:6;23645:47;;;;;;;;;;;:55;;:63;23701:6;23645:63;;;;;;;;;;;;;;;:71;;;;;;;23440:283;;;;:::o;6547:285::-;6671:19;6714:23;:21;:23::i;:::-;6706:32;;;;;;;;6762:13;:26;6776:11;6762:26;;;;;;;;;;;;;;;;;:39;;:47;6802:6;6762:47;;;;;;;;;;;:55;;:63;6818:6;6762:63;;;;;;;;;;;;;;;;6748:77;;6547:285;;;;;:::o;3314:183::-;3410:17;3455:13;:26;3469:11;3455:26;;;;;;;;;;;;;;;;;:35;;;;;;;;;;;;3443:47;;3314:183;;;:::o;4968:851:43:-;5258:33;5578:9;5294:13;:26;5308:11;5294:26;;;;;;;;;;;;;;;;;:39;;:52;5334:11;5294:52;;;;;;;;;;;5258:88;;5360:13;5356:207;;;5399:13;:26;5413:11;5399:26;;;;;;;;;;;;;;;;;:38;;5389:48;;5356:207;;;5533:19;5468:13;:26;5482:11;5468:26;;;;;;;;;;;;;;;;;:39;;:52;5508:11;5468:52;;;;;;;;;;;:62;;:84;;;;5356:207;5590:1;5578:13;;5573:240;5597:7;5593:1;:11;5573:240;;;5642:4;5629:17;;:6;5636:1;5629:9;;;;;;;;;;;;;;;;;;:17;;;5625:178;;;5697:8;5706:1;5697:11;;;;;;;;;;;;;;;;;;5666:7;:16;;:28;5683:7;5691:1;5683:10;;;;;;;;;;;;;;;;;;5666:28;;;;;;;;;;;;;;;:42;;;;5625:178;;;5777:8;5786:1;5777:11;;;;;;;;;;;;;;;;;;5747:7;:15;;:27;5763:7;5771:1;5763:10;;;;;;;;;;;;;;;;;;5747:27;;;;;;;;;;;;;;;:41;;;;5625:178;5606:3;;;;;;;5573:240;;;4968:851;;;;;;;;;;:::o;8277:225:60:-;8372:11;8405:90;8448:12;8474:11;8405:29;:90::i;:::-;8399:96;;8277:225;;;:::o;11234:511::-;11329:26;11357:20;11435:21;11401:23;:21;:23::i;:::-;11393:32;;;;;;;;11459:13;:26;11473:11;11459:26;;;;;;;;;;;;;;;;;:39;;;11435:63;;11533:11;;11516:28;;;:13;:28;;;;;11508:37;;;;;;;;11567:13;:26;11581:11;11567:26;;;;;;;;;;;;;;;;;:43;;:58;11611:13;11567:58;;;;;;;;;;;;;;;;;:76;;11555:88;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11668:13;:26;11682:11;11668:26;;;;;;;;;;;;;;;;;:43;;:58;11712:13;11668:58;;;;;;;;;;;;;;;;;:70;;;11653:85;;11234:511;;;;:::o;3696:416::-;3801:17;3820:13;3835:12;3863:38;3904:13;:26;3918:11;3904:26;;;;;;;;;;;;;;;;;:37;;3863:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3968:8;:15;3959:6;:24;3951:33;;;;;;;;4006:8;4015:6;4006:16;;;;;;;;;;;;;;;;;;:25;;;3994:37;;4049:8;4058:6;4049:16;;;;;;;;;;;;;;;;;;:19;;;4041:27;;4085:8;4094:6;4085:16;;;;;;;;;;;;;;;;;;:20;;;4078:27;;3696:416;;;;;;:::o;18771:544::-;18873:37;18883:26;;18873:9;:37::i;:::-;18865:46;;;;;;;;18970:7;18922:13;:26;18936:11;18922:26;;;;;;;;;;;;;;;;;:38;;:45;;;:55;;;;;;;;;;;;;;;;;;18991:7;18987:322;;;19014:16;:38;19031:20;;19014:38;;;;;;;;;;;;;;;;;:50;;;;19065:11;19014:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19014:63:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19014:63:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19014:63:60;;;;;;;;;;;;;;;;;19091:16;:42;19108:24;;19091:42;;;;;;;;;;;;;;;;;:49;;;;19141:11;19091:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;19091:62:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;19091:62:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;19091:62:60;;;;;;;;;;;;;;;;;19209:24;;19167:13;:26;19181:11;19167:26;;;;;;;;;;;;;;;;;:39;;:66;;;;;;;18987:322;;;19264:34;19286:11;19264:21;:34::i;:::-;18987:322;18771:544;;:::o;14358:203::-;14459:13;14499;:26;14513:11;14499:26;;;;;;;;;;;;;;;;;:39;;:47;14539:6;14499:47;;;;;;;;;;;:55;;;;;;;;;;;;14488:66;;14358:203;;;;:::o;21192:206::-;21304:23;21314:12;;21304:9;:23::i;:::-;21296:32;;;;;;;;21384:7;21338:13;:26;21352:11;21338:26;;;;;;;;;;;;;;;;;:43;;:53;;;;21192:206;;:::o;24213:413::-;24344:21;24296:37;24306:26;;24296:9;:37::i;:::-;24288:46;;;;;;;;24368:13;:26;24382:11;24368:26;;;;;;;;;;;;;;;;;:39;;;24344:63;;24417:16;:31;24434:13;24417:31;;;;;;;;;;;;;;;;;:43;;;;24461:11;24417:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24417:56:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;24417:56:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;24417:56:60;;;;;;;;;;;;;;;;;24483:16;:41;24500:23;;24483:41;;;;;;;;;;;;;;;;;:48;;;;24532:11;24483:61;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;24483:61:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;24483:61:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;24483:61:60;;;;;;;;;;;;;;;;;24596:23;;24554:13;:26;24568:11;24554:26;;;;;;;;;;;;;;;;;:39;;:65;;;;;;;24213:413;;:::o;15853:816::-;16061:23;16071:12;;16061:9;:23::i;:::-;16053:32;;;;;;;;16149:11;;16115:45;;;:13;:19;16129:4;16115:19;;;;;;;;;;;;;;;;;:30;;;:45;;;;16114:82;;;;;16184:11;;16176:19;;;:4;:19;;;;;16114:82;16095:111;;;;;;;;16217:12;:19;;;;16237:4;16217:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16217:25:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16217:25:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16217:25:60;;;;;;;;;;;;;;;;;16252:16;:44;16269:26;;16252:44;;;;;;;;;;;;;;;;;:51;;;;16304:4;16252:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16252:57:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16252:57:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16252:57:60;;;;;;;;;;;;;;;;;16352:4;16319:13;:19;16333:4;16319:19;;;;;;;;;;;;;;;;;:30;;:37;;;;;;;16397:9;16366:13;:19;16380:4;16366:19;;;;;;;;;;;;;;;;;:28;;;:40;;;;;;;;;;;;;;;;;;16451:26;;16416:13;:19;16430:4;16416:19;;;;;;;;;;;;;;;;;:32;;:61;;;;;;;16521:3;16487:13;:19;16501:4;16487:19;;;;;;;;;;;;;;;;;:31;;:37;;;;16564:10;16534:13;:19;16548:4;16534:19;;;;;;;;;;;;;;;;;:27;;;:40;;;;;;;;;;;;;;;;;;16584:13;:19;16598:4;16584:19;;;;;;;;;;;;;;;;;:38;;;;16623:4;16629:18;;16649:12;16584:78;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16584:78:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16584:78:60;;;;15853:816;;;;;;:::o;5421:301::-;5551:12;5565:16;5605:23;:21;:23::i;:::-;5597:32;;;;;;;;5646:13;:26;5660:11;5646:26;;;;;;;;;;;;;;;;;:39;;:47;5686:6;5646:47;;;;;;;;;;;:58;;;;5705:9;;5646:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5646:69:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5646:69:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5646:69:60;;;;;;;;;;;;;;;;;;;;;;;;;5639:76;;;;5421:301;;;;;;;:::o;23729:316::-;23914:30;23924:19;;23914:9;:30::i;:::-;23906:39;;;;;;;;23956:13;:26;23970:11;23956:26;;;;;;;;;;;;;;;;;:39;;:47;23996:6;23956:47;;;;;;;;;;;:58;;;;24015:6;24023:5;24030:7;23956:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;23956:82:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;23956:82:60;;;;23729:316;;;;;:::o;9547:298::-;9663:11;9698:23;:21;:23::i;:::-;9690:32;;;;;;;;9738:100;9777:16;:26;9794:8;9777:26;;;;;;;;;;;;;;;;;9817:11;9738:25;:100::i;:::-;9732:106;;9547:298;;;;:::o;18285:480::-;18450:37;18415:23;18425:12;;18415:9;:23::i;:::-;18407:32;;;;;;;;18490:13;:26;18504:11;18490:26;;;;;;;;;;;;;;;;;18450:66;;18547:9;18526;:18;;;:30;;;;;;;;;;;;;;;;;;18591:20;;18566:9;:22;;:45;;;;;;;18621:16;:44;18638:26;;18621:44;;;;;;;;;;;;;;;;;:56;;;;18678:11;18621:69;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18621:69:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18621:69:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18621:69:60;;;;;;;;;;;;;;;;;18700:16;:38;18717:20;;18700:38;;;;;;;;;;;;;;;;;:45;;;;18746:11;18700:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;18700:58:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;18700:58:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;18700:58:60;;;;;;;;;;;;;;;;;18285:480;;;:::o;2806:1525:43:-;3101:12;:19;;;;3121:11;3101:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3101:32:43;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3101:32:43;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3101:32:43;;;;;;;;;;;;;;;;;3183:11;3143:13;:26;3157:11;3143:26;;;;;;;;;;;;;;;;;:37;;:51;;;;;;;3242:9;3204:13;:26;3218:11;3204:26;;;;;;;;;;;;;;;;;:35;;;:47;;;;;;;;;;;;;;;;;;3309:9;3302:3;:17;3261:13;:26;3275:11;3261:26;;;;;;;;;;;;;;;;;:38;;:58;;;;3329:13;:26;3343:11;3329:26;;;;;;;;;;;;;;;;;:46;;:53;;;;3383:11;3329:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;3329:66:43;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;3329:66:43;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;3329:66:43;;;;;;;;;;;;;;;;;3476:11;3405:13;:26;3419:11;3405:26;;;;;;;;;;;;;;;;;:43;;:56;3449:11;3405:56;;;;;;;;;;;;;;;;;:68;;:82;;;;;;;3564:3;3497:13;:26;3511:11;3497:26;;;;;;;;;;;;;;;;;:43;;:56;3541:11;3497:56;;;;;;;;;;;;;;;;;:64;;:70;;;;3651:19;:26;3577:13;:26;3591:11;3577:26;;;;;;;;;;;;;;;;;:43;;:56;3621:11;3577:56;;;;;;;;;;;;;;;;;:71;;:100;;;;3764:19;3687:13;:26;3701:11;3687:26;;;;;;;;;;;;;;;;;:43;;:56;3731:11;3687:56;;;;;;;;;;;;;;;;;:74;;:96;;;;;;;;;;;;:::i;:::-;;3864:12;3793:13;:26;3807:11;3793:26;;;;;;;;;;;;;;;;;:43;;:56;3837:11;3793:56;;;;;;;;;;;;;;;;;:68;;:83;;;;3924:9;3886:13;:26;3900:11;3886:26;;;;;;;;;;;;;;;;;:35;;;:47;;;;;;;;;;;;;;;;;;3985:11;3943:13;:26;3957:11;3943:26;;;;;;;;;;;;;;;;;:39;;:53;;;;;;;4072:20;4006:13;:26;4020:11;4006:26;;;;;;;;;;;;;;;;;:39;;:53;4046:12;4006:53;;;;;;;;;;;:63;;:86;;;;4166:4;4102:13;:26;4116:11;4102:26;;;;;;;;;;;;;;;;;:39;;:53;4142:12;4102:53;;;;;;;;;;;:61;;;:68;;;;;;;;;;;;;;;;;;4243:4;4180:13;:26;4194:11;4180:26;;;;;;;;;;;;;;;;;:39;;:53;4220:12;4180:53;;;;;;;;;;;:60;;;:67;;;;;;;;;;;;;;;;;;4320:4;4257:13;:26;4271:11;4257:26;;;;;;;;;;;;;;;;;:39;;:53;4297:12;4257:53;;;;;;;;;;;:60;;;:67;;;;;;;;;;;;;;;;;;2806:1525;;;;;;;:::o;4869:259:60:-;4983:14;5021:23;:21;:23::i;:::-;5013:32;;;;;;;;5064:13;:26;5078:11;5064:26;;;;;;;;;;;;;;;;;:39;;:47;5104:6;5064:47;;;;;;;;;;;:57;;;5055:66;;4869:259;;;;:::o;5134:281::-;5253:12;5267:16;5307:23;:21;:23::i;:::-;5299:32;;;;;;;;5348:13;:26;5362:11;5348:26;;;;;;;;;;;;;;;;;:38;;:49;;;;5398:9;;5348:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5348:60:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5348:60:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5348:60:60;;;;;;;;;;;;;;;;;;;;;;;;;5341:67;;;;5134:281;;;;;;:::o;21404:859::-;21691:37;;:::i;:::-;21573:23;21583:12;;21573:9;:23::i;:::-;21565:32;;;;;;;;21658:21;;21615:64;;;:13;:26;21629:11;21615:26;;;;;;;;;;;;;;;;;:39;;;:64;;;;;21607:73;;;;;;;;21753:5;21738:9;:12;;:20;;;;;21784:4;21768:9;:13;;:20;;;;;;;;;;;;;21819:7;21798:9;:18;;:28;;;;;21836:13;:26;21850:11;21836:26;;;;;;;;;;;;;;;;;:37;;21879:9;21836:53;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;21836:53:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21915:16;;21904:7;:27;21900:357;;;21992:4;21945:13;:26;21959:11;21945:26;;;;;;;;;;;;;;;;;:44;;;:51;;;;;;;;;;;;;;;;;;21900:357;;;22028:18;;22017:7;:29;22013:244;;;22107:5;22060:13;:26;22074:11;22060:26;;;;;;;;;;;;;;;;;:44;;;:52;;;;;;;;;;;;;;;;;;22013:244;;;22196:4;22149:13;:26;22163:11;22149:26;;;;;;;;;;;;;;;;;:44;;;:51;;;;;;;;;;;;;;;;;;22212:34;22234:11;22212:21;:34::i;:::-;22013:244;21900:357;21404:859;;;;;:::o;17113:496::-;17287:21;17252:23;17262:12;;17252:9;:23::i;:::-;17244:32;;;;;;;;17311:13;:26;17325:11;17311:26;;;;;;;;;;;;;;;;;:39;;;17287:63;;17385:11;;17368:28;;;:13;:28;;;;;17360:37;;;;;;;;17486:21;;17407:13;:26;17421:11;17407:26;;;;;;;;;;;;;;;;;:43;;:58;17451:13;17407:58;;;;;;;;;;;;;;;;;:76;;:100;;;;;;;:::i;:::-;;17590:12;17517:13;:26;17531:11;17517:26;;;;;;;;;;;;;;;;;:43;;:58;17561:13;17517:58;;;;;;;;;;;;;;;;;:70;;:85;;;;17113:496;;;;;:::o;20915:271::-;21027:88;;;;;;;;;;21043:26;;21027:88;;;;;;;;;;21071:28;;21027:88;;;;;;;;;;21101:12;;21027:88;;;;;;;;;:14;:88::i;:::-;21019:97;;;;;;;;21172:7;21126:13;:26;21140:11;21126:26;;;;;;;;;;;;;;;;;:43;;:53;;;;20915:271;;:::o;7240:153::-;7313:11;7346:40;7373:12;7346:26;:40::i;:::-;7340:46;;7240:153;:::o;2240:1068::-;2341:12;2367:17;2398;2429:14;2457:20;2491:18;2523:25;2562:21;2597;2632;2720:37;2686:23;:21;:23::i;:::-;2678:32;;;;;;;;2760:13;:26;2774:11;2760:26;;;;;;;;;;;;;;;;;2720:66;;2803:9;:20;;;2796:27;;2845:9;:18;;;;;;;;;;;;2833:30;;2885:9;:18;;;;;;;;;;;;2873:30;;2922:9;:22;;;2913:31;;2969:9;:21;;;2954:36;;3013:52;3035:9;:29;;3013:21;:52::i;:::-;3000:65;;3095:56;3121:9;:29;;3095:25;:56::i;:::-;3075:76;;3177:9;:22;;;3161:38;;3228:9;:27;;;;;;;;;;;;3209:46;;3284:9;:17;;;;;;;;;;;;3265:36;;2240:1068;;;;;;;;;;;;:::o;344:31:67:-;;;;;;;;;;;;;:::o;15159:333:60:-;15251:19;15286:21;15310:13;:26;15324:11;15310:26;;;;;;;;;;;;;;;;;:39;;;15286:63;;15384:11;;15367:28;;;:13;:28;;;;;15359:37;;;;;;;;15418:13;:26;15432:11;15418:26;;;;;;;;;;;;;;;;;:43;;:58;15462:13;15418:58;;;;;;;;;;;;;;;;;:67;;15406:79;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15159:333;;;;:::o;6069:259::-;6174:10;6186:15;6225:23;:21;:23::i;:::-;6217:32;;;;;;;;6266:13;:26;6280:11;6266:26;;;;;;;;;;;;;;;;;:38;;:47;;;;6314:6;6266:55;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6266:55:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6266:55:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;6266:55:60;;;;;;;;;;;;;;;;;;;;;;;;;6259:62;;;;6069:259;;;;;:::o;812:1988:43:-;1086:12;:19;;;;1106:11;1086:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1086:32:43;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1086:32:43;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1086:32:43;;;;;;;;;;;;;;;;;1168:11;1128:13;:26;1142:11;1128:26;;;;;;;;;;;;;;;;;:37;;:51;;;;;;;1227:9;1189:13;:26;1203:11;1189:26;;;;;;;;;;;;;;;;;:35;;;:47;;;;;;;;;;;;;;;;;;1294:9;1287:3;:17;1246:13;:26;1260:11;1246:26;;;;;;;;;;;;;;;;;:38;;:58;;;;1314:13;:26;1328:11;1314:26;;;;;;;;;;;;;;;;;:46;;:53;;;;1368:11;1314:66;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1314:66:43;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1314:66:43;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1314:66:43;;;;;;;;;;;;;;;;;1461:11;1390:13;:26;1404:11;1390:26;;;;;;;;;;;;;;;;;:43;;:56;1434:11;1390:56;;;;;;;;;;;;;;;;;:68;;:82;;;;;;;1549:3;1482:13;:26;1496:11;1482:26;;;;;;;;;;;;;;;;;:43;;:56;1526:11;1482:56;;;;;;;;;;;;;;;;;:64;;:70;;;;1636:19;:26;1562:13;:26;1576:11;1562:26;;;;;;;;;;;;;;;;;:43;;:56;1606:11;1562:56;;;;;;;;;;;;;;;;;:71;;:100;;;;1749:19;1672:13;:26;1686:11;1672:26;;;;;;;;;;;;;;;;;:43;;:56;1716:11;1672:56;;;;;;;;;;;;;;;;;:74;;:96;;;;;;;;;;;;:::i;:::-;;1849:12;1778:13;:26;1792:11;1778:26;;;;;;;;;;;;;;;;;:43;;:56;1822:11;1778:56;;;;;;;;;;;;;;;;;:68;;:83;;;;1909:9;1871:13;:26;1885:11;1871:26;;;;;;;;;;;;;;;;;:35;;;:47;;;;;;;;;;;;;;;;;;1970:11;1928:13;:26;1942:11;1928:26;;;;;;;;;;;;;;;;;:39;;:53;;;;;;;2037:7;1991:13;:26;2005:11;1991:26;;;;;;;;;;;;;;;;;:43;;:53;;;;2058:13;2054:740;;;2087:16;:38;2104:20;;2087:38;;;;;;;;;;;;;;;;;:45;;;;2133:11;2087:58;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2087:58:43;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2087:58:43;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2087:58:43;;;;;;;;;;;;;;;;;2201:20;;2159:13;:26;2173:11;2159:26;;;;;;;;;;;;;;;;;:39;;:62;;;;;;;2286:3;2235:13;:26;2249:11;2235:26;;;;;;;;;;;;;;;;;:38;;:48;;:54;;;;2054:740;;;2339:1;2324:11;:16;2320:382;;;2360:16;:42;2377:24;;2360:42;;;;;;;;;;;;;;;;;:49;;;;2410:11;2360:62;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2360:62:43;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2360:62:43;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2360:62:43;;;;;;;;;;;;;;;;;2482:24;;2440:13;:26;2454:11;2440:26;;;;;;;;;;;;;;;;;:39;;:66;;;;;;;2320:382;;;2545:16;:40;2562:22;;2545:40;;;;;;;;;;;;;;;;;:47;;;;2593:11;2545:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2545:60:43;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2545:60:43;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2545:60:43;;;;;;;;;;;;;;;;;2665:22;;2623:13;:26;2637:11;2623:26;;;;;;;;;;;;;;;;;:39;;:64;;;;;;;2320:382;2780:3;2715:13;:26;2729:11;2715:26;;;;;;;;;;;;;;;;;:39;;:52;2755:11;2715:52;;;;;;;;;;;:62;;:68;;;;2054:740;812:1988;;;;;;;:::o;19909:229:60:-;20040:23;20050:12;;20040:9;:23::i;:::-;20032:32;;;;;;;;20126:5;20075:13;:26;20089:11;20075:26;;;;;;;;;;;;;;;;;:38;;:48;;:56;;;;19909:229;;:::o;12199:282::-;12298:16;12330:37;12370:13;:26;12384:11;12370:26;;;;;;;;;;;;;;;;;12330:66;;12417:57;12444:9;:29;;12417:26;:57::i;:::-;12406:68;;12199:282;;;;:::o;8692:232::-;8788:11;8823:23;:21;:23::i;:::-;8815:32;;;;;;;;8863:54;8890:16;:26;8907:8;8890:26;;;;;;;;;;;;;;;;;8863;:54::i;:::-;8857:60;;8692:232;;;:::o;5728:335::-;5875:24;5901:15;5940:23;:21;:23::i;:::-;5932:32;;;;;;;;5981:13;:26;5995:11;5981:26;;;;;;;;;;;;;;;;;:39;;:47;6021:6;5981:47;;;;;;;;;;;:57;;;;6039:9;;6050:5;5981:75;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;5981:75:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;5981:75:60;;;;;;39:16:-1;36:1;17:17;2:54;5981:75:60;101:4:-1;97:9;90:4;84;80:15;76:31;69:5;65:43;126:6;120:4;113:20;0:138;13:2;8:3;5:11;2:2;;;29:1;26;19:12;2:2;5981:75:60;;;;;;20:11:-1;15:3;12:20;9:2;;;45:1;42;35:12;9:2;73:11;68:3;64:21;57:28;;126:4;121:3;117:14;163:9;145:16;142:31;139:2;;;186:1;183;176:12;139:2;224:3;218:10;339:9;333:2;319:12;315:21;297:16;293:44;290:59;268:11;254:12;251:29;239:119;236:2;;;371:1;368;361:12;236:2;0:383;;5981:75:60;;;;;;;;;;;;;;;;;5974:82;;;;5728:335;;;;;;;;:::o;14810:195::-;14914:15;14955:13;:26;14969:11;14955:26;;;;;;;;;;;;;;;;;:43;;;14945:53;;14810:195;;;:::o;17676:394::-;17810:21;17775:23;17785:12;;17775:9;:23::i;:::-;17767:32;;;;;;;;17834:13;:26;17848:11;17834:26;;;;;;;;;;;;;;;;;:39;;;17810:63;;17908:11;;17891:28;;;:13;:28;;;;;17883:37;;;;;;;;17982:13;:26;17996:11;17982:26;;;;;;;;;;;;;;;;;:43;;:58;18026:13;17982:58;;;;;;;;;;;;;;;;;:67;;18055:7;17982:81;;39:1:-1;33:3;27:10;23:18;57:10;52:3;45:23;79:10;72:17;;0:93;17982:81:60;;;;;;;;;;;;;;;;;;;;;;;;;;;17676:394;;;:::o;7515:151::-;7587:11;7620:39;7646:12;7620:25;:39::i;:::-;7614:45;;7515:151;:::o;16675:325::-;16867:23;16877:12;;16867:9;:23::i;:::-;16859:32;;;;;;;;16902:13;:26;16916:11;16902:26;;;;;;;;;;;;;;;;;:45;;;;16948:7;16957:21;;16980:12;16902:91;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;16902:91:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;16902:91:60;;;;16675:325;;;;;:::o;610:160:67:-;671:12;732:8;;;;;;;;;;;715:39;;;755:9;715:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;715:50:67;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;715:50:67;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;715:50:67;;;;;;;;;;;;;;;;701:64;;:10;:64;;;691:74;;610:160;;;:::o;22269:361:60:-;22352:21;22376:13;:26;22390:11;22376:26;;;;;;;;;;;;;;;;;:39;;;22352:63;;22425:16;:31;22442:13;22425:31;;;;;;;;;;;;;;;;;:43;;;;22469:11;22425:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22425:56:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;22425:56:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;22425:56:60;;;;;;;;;;;;;;;;;22491:16;:39;22508:21;;22491:39;;;;;;;;;;;;;;;;;:46;;;;22538:11;22491:59;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;22491:59:60;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;22491:59:60;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;22491:59:60;;;;;;;;;;;;;;;;;22602:21;;22560:13;:26;22574:11;22560:26;;;;;;;;;;;;;;;;;:39;;:63;;;;;;;22269:361;;:::o;707:316:6:-;787:27;956:9;942:23;;:10;:23;;;941:75;;;;970:24;:22;:24::i;:::-;:34;;;1005:10;970:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;970:46:6;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;970:46:6;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;970:46:6;;;;;;;;;;;;;;;;941:75;916:100;;707:316;:::o;766:185:77:-;899:13;930:5;:14;;;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;930:16:77;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;930:16:77;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;930:16:77;;;;;;;;;;;;;;;;922:24;;766:185;;;:::o;1902:230::-;2062:13;2093:5;:19;;;;2113:13;2093:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2093:34:77;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2093:34:77;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2093:34:77;;;;;;;;;;;;;;;;2085:42;;1902:230;;;;:::o;1311:222::-;1467:13;1498:5;:15;;;;1514:13;1498:30;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1498:30:77;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1498:30:77;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1498:30:77;;;;;;;;;;;;;;;;1490:38;;1311:222;;;;:::o;881:350:67:-;951:12;971:10;1012:9;984:17;971:30;;1024:1;1012:13;;1007:220;1031:2;1027:1;:6;1007:220;;;1077:3;1069:12;;1052:29;;;:10;1063:1;1052:13;;;;;;;;;;;;;:29;;;;1048:43;;;1083:8;;1048:43;1134:8;;;;;;;;;;;1117:39;;;1157:10;1168:1;1157:13;;;;;;;;;;;;;1117:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;1117:54:67;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;1117:54:67;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;1117:54:67;;;;;;;;;;;;;;;;1103:68;;:10;:68;;;1099:122;;;1193:4;1183:14;;1207:5;;1099:122;1007:220;1035:3;;;;;;;1007:220;;;881:350;;;;;:::o;422:188:77:-;556:13;587:5;:16;;;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;587:18:77;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;587:18:77;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;587:18:77;;;;;;;;;;;;;;;;579:26;;422:188;;;:::o;2310:180::-;2439:14;2472:5;:11;;;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;2472:13:77;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;2472:13:77;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;2472:13:77;;;;;;;;;;;;;;;;2463:22;;2310:180;;;:::o;240:219:6:-;321:32;404:47;417:33;;404:12;:47::i;:::-;369:83;;240:219;:::o;66:5755:43:-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o",
  "source": "pragma solidity ^0.4.25;\n\nimport \"../../storage/DaoStorage.sol\";\n\ncontract MockDaoStorage is DaoStorage {\n    using DoublyLinkedList for DoublyLinkedList.Bytes;\n\n    constructor(address _resolver) public DaoStorage(_resolver) {}\n\n    /**\n    @notice Function to mock add new proposal in pre-defined state\n    @dev Note that this function will only be called during the tests\n    @param _proposalId ID of the proposal, i.e. IPFS doc hash\n    @param _roundIndex Index of the voting round, if not draft phase\n    @param _proposer Address of the proposer\n    @param _endorser Address of the endorser\n    @param _milestonesFundings Uint Array of the milestone fundings\n    @param _isDraftPhase Boolean, true if adding proposal in draft phase\n    @param _finalReward Final rewards on completion of proposal\n    */\n    function mock_put_proposal_as(\n        bytes32 _proposalId,\n        uint256 _roundIndex,\n        bool _isDraftPhase,\n        address _proposer,\n        address _endorser,\n        uint256[] _milestonesFundings,\n        uint256 _finalReward\n    )\n        public\n    {\n        allProposals.append(_proposalId);\n        proposalsById[_proposalId].proposalId = _proposalId;\n        proposalsById[_proposalId].proposer = _proposer;\n        proposalsById[_proposalId].timeCreated = now - (1 minutes);\n        proposalsById[_proposalId].proposalVersionDocs.append(_proposalId);\n        proposalsById[_proposalId].proposalVersions[_proposalId].docIpfsHash = _proposalId;\n        proposalsById[_proposalId].proposalVersions[_proposalId].created = now;\n        proposalsById[_proposalId].proposalVersions[_proposalId].milestoneCount = _milestonesFundings.length;\n        proposalsById[_proposalId].proposalVersions[_proposalId].milestoneFundings = _milestonesFundings;\n        proposalsById[_proposalId].proposalVersions[_proposalId].finalReward = _finalReward;\n        proposalsById[_proposalId].endorser = _endorser;\n        proposalsById[_proposalId].finalVersion = _proposalId;\n        proposalsById[_proposalId].collateralAmount = 2 ether;\n        if (_isDraftPhase) {\n            proposalsByState[PROPOSAL_STATE_DRAFT].append(_proposalId);\n            proposalsById[_proposalId].currentState = PROPOSAL_STATE_DRAFT;\n            proposalsById[_proposalId].draftVoting.startTime = now;\n        } else {\n            if (_roundIndex == 0) {\n                proposalsByState[PROPOSAL_STATE_MODERATED].append(_proposalId);\n                proposalsById[_proposalId].currentState = PROPOSAL_STATE_MODERATED;\n            } else {\n                proposalsByState[PROPOSAL_STATE_ONGOING].append(_proposalId);\n                proposalsById[_proposalId].currentState = PROPOSAL_STATE_ONGOING;\n            }\n            proposalsById[_proposalId].votingRounds[_roundIndex].startTime = now;\n        }\n    }\n\n    function mock_put_proposal_in_milestone(\n        bytes32 _proposalId,\n        uint256 _milestoneId,\n        address _proposer,\n        address _endorser,\n        uint256[] _milestonesFundings,\n        uint256 _finalReward,\n        uint256 _previousVotingStart\n    )\n        public\n    {\n        allProposals.append(_proposalId);\n        proposalsById[_proposalId].proposalId = _proposalId;\n        proposalsById[_proposalId].proposer = _proposer;\n        proposalsById[_proposalId].timeCreated = now - (5 minutes);\n        proposalsById[_proposalId].proposalVersionDocs.append(_proposalId);\n        proposalsById[_proposalId].proposalVersions[_proposalId].docIpfsHash = _proposalId;\n        proposalsById[_proposalId].proposalVersions[_proposalId].created = now;\n        proposalsById[_proposalId].proposalVersions[_proposalId].milestoneCount = _milestonesFundings.length;\n        proposalsById[_proposalId].proposalVersions[_proposalId].milestoneFundings = _milestonesFundings;\n        proposalsById[_proposalId].proposalVersions[_proposalId].finalReward = _finalReward;\n        proposalsById[_proposalId].endorser = _endorser;\n        proposalsById[_proposalId].finalVersion = _proposalId;\n        proposalsById[_proposalId].votingRounds[_milestoneId].startTime = _previousVotingStart;\n        proposalsById[_proposalId].votingRounds[_milestoneId].claimed = true;\n        proposalsById[_proposalId].votingRounds[_milestoneId].passed = true;\n        proposalsById[_proposalId].votingRounds[_milestoneId].funded = true;\n    }\n\n    /**\n    @notice Mock function to add fake votes in the past for a proposal\n    @dev This will never be available in the deployment, only for test purposes\n    @param _proposalId ID of the proposal\n    @param _roundIndex Index of the voting round\n    @param _isDraftPhase Boolean, whether updating the votes for draft phase or not\n    @param _voters Array of addresses of the voters\n    @param _votes Boolean array of the votes (for or against)\n    @param _weights Uint array of the voting weights\n    @param _length Length of the above arrays (number of voters)\n    @param _startOfVotingRound start of this voting round\n    */\n    function mock_put_past_votes(\n        bytes32 _proposalId,\n        uint256 _roundIndex,\n        bool _isDraftPhase,\n        address[] _voters,\n        bool[] _votes,\n        uint256[] _weights,\n        uint256 _length,\n        uint256 _startOfVotingRound\n    )\n        public\n    {\n        DaoStructs.Voting storage _voting = proposalsById[_proposalId].votingRounds[_roundIndex];\n        if (_isDraftPhase) {\n            _voting = proposalsById[_proposalId].draftVoting;\n        } else {\n            proposalsById[_proposalId].votingRounds[_roundIndex].startTime = _startOfVotingRound;\n        }\n\n        for (uint256 i = 0; i < _length; i++) {\n            if (_votes[i] == true) {\n                _voting.yesVotes[_voters[i]] = _weights[i];\n            } else {\n                _voting.noVotes[_voters[i]] = _weights[i];\n            }\n        }\n    }\n}\n",
  "sourcePath": "/Users/aeufemio/projects/dgx/contracts/dao-contracts/contracts/mock/storage/MockDaoStorage.sol",
  "ast": {
    "absolutePath": "/Users/aeufemio/projects/dgx/contracts/dao-contracts/contracts/mock/storage/MockDaoStorage.sol",
    "exportedSymbols": {
      "MockDaoStorage": [
        11464
      ]
    },
    "id": 11465,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 10988,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".25"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:24:43"
      },
      {
        "absolutePath": "/Users/aeufemio/projects/dgx/contracts/dao-contracts/contracts/storage/DaoStorage.sol",
        "file": "../../storage/DaoStorage.sol",
        "id": 10989,
        "nodeType": "ImportDirective",
        "scope": 11465,
        "sourceUnit": 17875,
        "src": "26:38:43",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 10990,
              "name": "DaoStorage",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 17874,
              "src": "93:10:43",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_DaoStorage_$17874",
                "typeString": "contract DaoStorage"
              }
            },
            "id": 10991,
            "nodeType": "InheritanceSpecifier",
            "src": "93:10:43"
          }
        ],
        "contractDependencies": [
          1629,
          1868,
          17874,
          18628,
          22049
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 11464,
        "linearizedBaseContracts": [
          11464,
          17874,
          22049,
          1868,
          1629,
          18628
        ],
        "name": "MockDaoStorage",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "id": 10994,
            "libraryName": {
              "contractScope": null,
              "id": 10992,
              "name": "DoublyLinkedList",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 25116,
              "src": "116:16:43",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_DoublyLinkedList_$25116",
                "typeString": "library DoublyLinkedList"
              }
            },
            "nodeType": "UsingForDirective",
            "src": "110:50:43",
            "typeName": {
              "contractScope": null,
              "id": 10993,
              "name": "DoublyLinkedList.Bytes",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 22605,
              "src": "137:22:43",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_Bytes_$22605_storage_ptr",
                "typeString": "struct DoublyLinkedList.Bytes"
              }
            }
          },
          {
            "body": {
              "id": 11002,
              "nodeType": "Block",
              "src": "226:2:43",
              "statements": []
            },
            "documentation": null,
            "id": 11003,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 10999,
                    "name": "_resolver",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 10996,
                    "src": "215:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  }
                ],
                "id": 11000,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 10998,
                  "name": "DaoStorage",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 17874,
                  "src": "204:10:43",
                  "typeDescriptions": {
                    "typeIdentifier": "t_type$_t_contract$_DaoStorage_$17874_$",
                    "typeString": "type(contract DaoStorage)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "204:21:43"
              }
            ],
            "name": "",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 10997,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 10996,
                  "name": "_resolver",
                  "nodeType": "VariableDeclaration",
                  "scope": 11003,
                  "src": "178:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 10995,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "178:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "177:19:43"
            },
            "payable": false,
            "returnParameters": {
              "id": 11001,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "226:0:43"
            },
            "scope": 11464,
            "src": "166:62:43",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11201,
              "nodeType": "Block",
              "src": "1076:1724:43",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 11024,
                        "name": "_proposalId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11005,
                        "src": "1106:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 11021,
                        "name": "allProposals",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 16051,
                        "src": "1086:12:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                          "typeString": "struct DoublyLinkedList.Bytes storage ref"
                        }
                      },
                      "id": 11023,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "append",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24585,
                      "src": "1086:19:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                        "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                      }
                    },
                    "id": 11025,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1086:32:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11026,
                  "nodeType": "ExpressionStatement",
                  "src": "1086:32:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11032,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11027,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1128:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11029,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11028,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1142:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1128:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11030,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "proposalId",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7947,
                      "src": "1128:37:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11031,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11005,
                      "src": "1168:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "1128:51:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11033,
                  "nodeType": "ExpressionStatement",
                  "src": "1128:51:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11039,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11034,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1189:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11036,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11035,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1203:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1189:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11037,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "proposer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7974,
                      "src": "1189:35:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11038,
                      "name": "_proposer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11011,
                      "src": "1227:9:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "1189:47:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11040,
                  "nodeType": "ExpressionStatement",
                  "src": "1189:47:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11049,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11041,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1246:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11043,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11042,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1260:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1246:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11044,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "timeCreated",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7951,
                      "src": "1246:38:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 11048,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 11045,
                        "name": "now",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 26184,
                        "src": "1287:3:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "-",
                      "rightExpression": {
                        "argumentTypes": null,
                        "components": [
                          {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 11046,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "1294:9:43",
                            "subdenomination": "minutes",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_60_by_1",
                              "typeString": "int_const 60"
                            },
                            "value": "1"
                          }
                        ],
                        "id": 11047,
                        "isConstant": false,
                        "isInlineArray": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "TupleExpression",
                        "src": "1293:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_60_by_1",
                          "typeString": "int_const 60"
                        }
                      },
                      "src": "1287:17:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1246:58:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11050,
                  "nodeType": "ExpressionStatement",
                  "src": "1246:58:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 11056,
                        "name": "_proposalId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11005,
                        "src": "1368:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "id": 11051,
                            "name": "proposalsById",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 16055,
                            "src": "1314:13:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                              "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                            }
                          },
                          "id": 11053,
                          "indexExpression": {
                            "argumentTypes": null,
                            "id": 11052,
                            "name": "_proposalId",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11005,
                            "src": "1328:11:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "1314:26:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                            "typeString": "struct DaoStructs.Proposal storage ref"
                          }
                        },
                        "id": 11054,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "proposalVersionDocs",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 7953,
                        "src": "1314:46:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                          "typeString": "struct DoublyLinkedList.Bytes storage ref"
                        }
                      },
                      "id": 11055,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "append",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24585,
                      "src": "1314:53:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                        "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                      }
                    },
                    "id": 11057,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1314:66:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11058,
                  "nodeType": "ExpressionStatement",
                  "src": "1314:66:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11067,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11059,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1390:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11061,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11060,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1404:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1390:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11062,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1390:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11064,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11063,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1434:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1390:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11065,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "docIpfsHash",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7932,
                      "src": "1390:68:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11066,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11005,
                      "src": "1461:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "1390:82:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11068,
                  "nodeType": "ExpressionStatement",
                  "src": "1390:82:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11077,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11069,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1482:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11071,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11070,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1496:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1482:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11072,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1482:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11074,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11073,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1526:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1482:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11075,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "created",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7934,
                      "src": "1482:64:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11076,
                      "name": "now",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 26184,
                      "src": "1549:3:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1482:70:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11078,
                  "nodeType": "ExpressionStatement",
                  "src": "1482:70:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11088,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11079,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1562:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11081,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11080,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1576:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1562:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11082,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1562:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11084,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11083,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1606:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1562:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11085,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "milestoneCount",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7936,
                      "src": "1562:71:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 11086,
                        "name": "_milestonesFundings",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11016,
                        "src": "1636:19:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                          "typeString": "uint256[] memory"
                        }
                      },
                      "id": 11087,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": null,
                      "src": "1636:26:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1562:100:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11089,
                  "nodeType": "ExpressionStatement",
                  "src": "1562:100:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11098,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11090,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1672:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11092,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11091,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1686:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1672:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11093,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1672:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11095,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11094,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1716:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1672:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11096,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "milestoneFundings",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7941,
                      "src": "1672:74:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11097,
                      "name": "_milestonesFundings",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11016,
                      "src": "1749:19:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "src": "1672:96:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                      "typeString": "uint256[] storage ref"
                    }
                  },
                  "id": 11099,
                  "nodeType": "ExpressionStatement",
                  "src": "1672:96:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11108,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11100,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1778:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11102,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11101,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1792:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1778:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11103,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1778:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11105,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11104,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1822:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1778:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11106,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "finalReward",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7938,
                      "src": "1778:68:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11107,
                      "name": "_finalReward",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11018,
                      "src": "1849:12:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1778:83:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11109,
                  "nodeType": "ExpressionStatement",
                  "src": "1778:83:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11115,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11110,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1871:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11112,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11111,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1885:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1871:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11113,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "endorser",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7976,
                      "src": "1871:35:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11114,
                      "name": "_endorser",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11013,
                      "src": "1909:9:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "1871:47:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11116,
                  "nodeType": "ExpressionStatement",
                  "src": "1871:47:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11122,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11117,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1928:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11119,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11118,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1942:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1928:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11120,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "finalVersion",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7969,
                      "src": "1928:39:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11121,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11005,
                      "src": "1970:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "1928:53:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11123,
                  "nodeType": "ExpressionStatement",
                  "src": "1928:53:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11129,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11124,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1991:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11126,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11125,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "2005:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1991:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11127,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "collateralAmount",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7967,
                      "src": "1991:43:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "32",
                      "id": 11128,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "2037:7:43",
                      "subdenomination": "ether",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_2000000000000000000_by_1",
                        "typeString": "int_const 2000000000000000000"
                      },
                      "value": "2"
                    },
                    "src": "1991:53:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11130,
                  "nodeType": "ExpressionStatement",
                  "src": "1991:53:43"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "id": 11131,
                    "name": "_isDraftPhase",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 11009,
                    "src": "2058:13:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 11199,
                    "nodeType": "Block",
                    "src": "2306:488:43",
                    "statements": [
                      {
                        "condition": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 11157,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "id": 11155,
                            "name": "_roundIndex",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11007,
                            "src": "2324:11:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 11156,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2339:1:43",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "2324:16:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 11187,
                          "nodeType": "Block",
                          "src": "2527:175:43",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 11177,
                                    "name": "_proposalId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11005,
                                    "src": "2593:11:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11173,
                                      "name": "proposalsByState",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 16059,
                                      "src": "2545:16:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Bytes_$22605_storage_$",
                                        "typeString": "mapping(bytes32 => struct DoublyLinkedList.Bytes storage ref)"
                                      }
                                    },
                                    "id": 11175,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11174,
                                      "name": "PROPOSAL_STATE_ONGOING",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 1310,
                                      "src": "2562:22:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "2545:40:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                                      "typeString": "struct DoublyLinkedList.Bytes storage ref"
                                    }
                                  },
                                  "id": 11176,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "append",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 24585,
                                  "src": "2545:47:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                                    "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                                  }
                                },
                                "id": 11178,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "2545:60:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "id": 11179,
                              "nodeType": "ExpressionStatement",
                              "src": "2545:60:43"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 11185,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11180,
                                      "name": "proposalsById",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 16055,
                                      "src": "2623:13:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                        "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                      }
                                    },
                                    "id": 11182,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11181,
                                      "name": "_proposalId",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11005,
                                      "src": "2637:11:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "2623:26:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                      "typeString": "struct DaoStructs.Proposal storage ref"
                                    }
                                  },
                                  "id": 11183,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "memberName": "currentState",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 7949,
                                  "src": "2623:39:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "id": 11184,
                                  "name": "PROPOSAL_STATE_ONGOING",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 1310,
                                  "src": "2665:22:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "src": "2623:64:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "id": 11186,
                              "nodeType": "ExpressionStatement",
                              "src": "2623:64:43"
                            }
                          ]
                        },
                        "id": 11188,
                        "nodeType": "IfStatement",
                        "src": "2320:382:43",
                        "trueBody": {
                          "id": 11172,
                          "nodeType": "Block",
                          "src": "2342:179:43",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 11162,
                                    "name": "_proposalId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11005,
                                    "src": "2410:11:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11158,
                                      "name": "proposalsByState",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 16059,
                                      "src": "2360:16:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Bytes_$22605_storage_$",
                                        "typeString": "mapping(bytes32 => struct DoublyLinkedList.Bytes storage ref)"
                                      }
                                    },
                                    "id": 11160,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11159,
                                      "name": "PROPOSAL_STATE_MODERATED",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 1307,
                                      "src": "2377:24:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "2360:42:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                                      "typeString": "struct DoublyLinkedList.Bytes storage ref"
                                    }
                                  },
                                  "id": 11161,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "append",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 24585,
                                  "src": "2360:49:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                                    "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                                  }
                                },
                                "id": 11163,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "2360:62:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "id": 11164,
                              "nodeType": "ExpressionStatement",
                              "src": "2360:62:43"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 11170,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11165,
                                      "name": "proposalsById",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 16055,
                                      "src": "2440:13:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                        "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                      }
                                    },
                                    "id": 11167,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11166,
                                      "name": "_proposalId",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11005,
                                      "src": "2454:11:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "2440:26:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                      "typeString": "struct DaoStructs.Proposal storage ref"
                                    }
                                  },
                                  "id": 11168,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "memberName": "currentState",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 7949,
                                  "src": "2440:39:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "id": 11169,
                                  "name": "PROPOSAL_STATE_MODERATED",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 1307,
                                  "src": "2482:24:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "src": "2440:66:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "id": 11171,
                              "nodeType": "ExpressionStatement",
                              "src": "2440:66:43"
                            }
                          ]
                        }
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11197,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 11189,
                                    "name": "proposalsById",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 16055,
                                    "src": "2715:13:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                      "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                    }
                                  },
                                  "id": 11191,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 11190,
                                    "name": "_proposalId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11005,
                                    "src": "2729:11:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "2715:26:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                    "typeString": "struct DaoStructs.Proposal storage ref"
                                  }
                                },
                                "id": 11192,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "votingRounds",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 7963,
                                "src": "2715:39:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                                  "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                                }
                              },
                              "id": 11194,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11193,
                                "name": "_roundIndex",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11007,
                                "src": "2755:11:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "2715:52:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Voting_$7930_storage",
                                "typeString": "struct DaoStructs.Voting storage ref"
                              }
                            },
                            "id": 11195,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "startTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7907,
                            "src": "2715:62:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 11196,
                            "name": "now",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 26184,
                            "src": "2780:3:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "2715:68:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 11198,
                        "nodeType": "ExpressionStatement",
                        "src": "2715:68:43"
                      }
                    ]
                  },
                  "id": 11200,
                  "nodeType": "IfStatement",
                  "src": "2054:740:43",
                  "trueBody": {
                    "id": 11154,
                    "nodeType": "Block",
                    "src": "2073:227:43",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 11136,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "2133:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "id": 11132,
                                "name": "proposalsByState",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 16059,
                                "src": "2087:16:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Bytes_$22605_storage_$",
                                  "typeString": "mapping(bytes32 => struct DoublyLinkedList.Bytes storage ref)"
                                }
                              },
                              "id": 11134,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11133,
                                "name": "PROPOSAL_STATE_DRAFT",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 1304,
                                "src": "2104:20:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "2087:38:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                                "typeString": "struct DoublyLinkedList.Bytes storage ref"
                              }
                            },
                            "id": 11135,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "append",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 24585,
                            "src": "2087:45:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                              "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                            }
                          },
                          "id": 11137,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "2087:58:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 11138,
                        "nodeType": "ExpressionStatement",
                        "src": "2087:58:43"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11144,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "id": 11139,
                                "name": "proposalsById",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 16055,
                                "src": "2159:13:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                  "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                }
                              },
                              "id": 11141,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11140,
                                "name": "_proposalId",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11005,
                                "src": "2173:11:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "2159:26:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                "typeString": "struct DaoStructs.Proposal storage ref"
                              }
                            },
                            "id": 11142,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "currentState",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7949,
                            "src": "2159:39:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 11143,
                            "name": "PROPOSAL_STATE_DRAFT",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 1304,
                            "src": "2201:20:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          "src": "2159:62:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "id": 11145,
                        "nodeType": "ExpressionStatement",
                        "src": "2159:62:43"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11152,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "id": 11146,
                                  "name": "proposalsById",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 16055,
                                  "src": "2235:13:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                    "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                  }
                                },
                                "id": 11148,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "id": 11147,
                                  "name": "_proposalId",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11005,
                                  "src": "2249:11:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "2235:26:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                  "typeString": "struct DaoStructs.Proposal storage ref"
                                }
                              },
                              "id": 11149,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "draftVoting",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 7959,
                              "src": "2235:38:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Voting_$7930_storage",
                                "typeString": "struct DaoStructs.Voting storage ref"
                              }
                            },
                            "id": 11150,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "startTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7907,
                            "src": "2235:48:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 11151,
                            "name": "now",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 26184,
                            "src": "2286:3:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "2235:54:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 11153,
                        "nodeType": "ExpressionStatement",
                        "src": "2235:54:43"
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": "@notice Function to mock add new proposal in pre-defined state\n@dev Note that this function will only be called during the tests\n@param _proposalId ID of the proposal, i.e. IPFS doc hash\n@param _roundIndex Index of the voting round, if not draft phase\n@param _proposer Address of the proposer\n@param _endorser Address of the endorser\n@param _milestonesFundings Uint Array of the milestone fundings\n@param _isDraftPhase Boolean, true if adding proposal in draft phase\n@param _finalReward Final rewards on completion of proposal",
            "id": 11202,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "mock_put_proposal_as",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11019,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11005,
                  "name": "_proposalId",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "851:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11004,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "851:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11007,
                  "name": "_roundIndex",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "880:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11006,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "880:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11009,
                  "name": "_isDraftPhase",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "909:18:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 11008,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "909:4:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11011,
                  "name": "_proposer",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "937:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11010,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "937:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11013,
                  "name": "_endorser",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "964:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11012,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "964:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11016,
                  "name": "_milestonesFundings",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "991:29:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11014,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "991:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11015,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "991:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11018,
                  "name": "_finalReward",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "1030:20:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11017,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1030:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "841:215:43"
            },
            "payable": false,
            "returnParameters": {
              "id": 11020,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1076:0:43"
            },
            "scope": 11464,
            "src": "812:1988:43",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11363,
              "nodeType": "Block",
              "src": "3091:1240:43",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 11223,
                        "name": "_proposalId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11204,
                        "src": "3121:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 11220,
                        "name": "allProposals",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 16051,
                        "src": "3101:12:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                          "typeString": "struct DoublyLinkedList.Bytes storage ref"
                        }
                      },
                      "id": 11222,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "append",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24585,
                      "src": "3101:19:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                        "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                      }
                    },
                    "id": 11224,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3101:32:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11225,
                  "nodeType": "ExpressionStatement",
                  "src": "3101:32:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11231,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11226,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3143:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11228,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11227,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3157:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3143:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11229,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "proposalId",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7947,
                      "src": "3143:37:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11230,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11204,
                      "src": "3183:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "3143:51:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11232,
                  "nodeType": "ExpressionStatement",
                  "src": "3143:51:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11238,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11233,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3204:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11235,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11234,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3218:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3204:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11236,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "proposer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7974,
                      "src": "3204:35:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11237,
                      "name": "_proposer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11208,
                      "src": "3242:9:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "3204:47:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11239,
                  "nodeType": "ExpressionStatement",
                  "src": "3204:47:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11248,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11240,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3261:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11242,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11241,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3275:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3261:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11243,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "timeCreated",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7951,
                      "src": "3261:38:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 11247,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 11244,
                        "name": "now",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 26184,
                        "src": "3302:3:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "-",
                      "rightExpression": {
                        "argumentTypes": null,
                        "components": [
                          {
                            "argumentTypes": null,
                            "hexValue": "35",
                            "id": 11245,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "3309:9:43",
                            "subdenomination": "minutes",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_300_by_1",
                              "typeString": "int_const 300"
                            },
                            "value": "5"
                          }
                        ],
                        "id": 11246,
                        "isConstant": false,
                        "isInlineArray": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "TupleExpression",
                        "src": "3308:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_300_by_1",
                          "typeString": "int_const 300"
                        }
                      },
                      "src": "3302:17:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3261:58:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11249,
                  "nodeType": "ExpressionStatement",
                  "src": "3261:58:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 11255,
                        "name": "_proposalId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11204,
                        "src": "3383:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "id": 11250,
                            "name": "proposalsById",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 16055,
                            "src": "3329:13:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                              "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                            }
                          },
                          "id": 11252,
                          "indexExpression": {
                            "argumentTypes": null,
                            "id": 11251,
                            "name": "_proposalId",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11204,
                            "src": "3343:11:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "3329:26:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                            "typeString": "struct DaoStructs.Proposal storage ref"
                          }
                        },
                        "id": 11253,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "proposalVersionDocs",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 7953,
                        "src": "3329:46:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                          "typeString": "struct DoublyLinkedList.Bytes storage ref"
                        }
                      },
                      "id": 11254,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "append",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24585,
                      "src": "3329:53:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                        "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                      }
                    },
                    "id": 11256,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3329:66:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11257,
                  "nodeType": "ExpressionStatement",
                  "src": "3329:66:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11266,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11258,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3405:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11260,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11259,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3419:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3405:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11261,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3405:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11263,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11262,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3449:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3405:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11264,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "docIpfsHash",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7932,
                      "src": "3405:68:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11265,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11204,
                      "src": "3476:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "3405:82:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11267,
                  "nodeType": "ExpressionStatement",
                  "src": "3405:82:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11276,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11268,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3497:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11270,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11269,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3511:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3497:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11271,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3497:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11273,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11272,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3541:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3497:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11274,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "created",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7934,
                      "src": "3497:64:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11275,
                      "name": "now",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 26184,
                      "src": "3564:3:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3497:70:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11277,
                  "nodeType": "ExpressionStatement",
                  "src": "3497:70:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11287,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11278,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3577:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11280,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11279,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3591:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3577:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11281,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3577:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11283,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11282,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3621:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3577:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11284,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "milestoneCount",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7936,
                      "src": "3577:71:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 11285,
                        "name": "_milestonesFundings",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11213,
                        "src": "3651:19:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                          "typeString": "uint256[] memory"
                        }
                      },
                      "id": 11286,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": null,
                      "src": "3651:26:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3577:100:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11288,
                  "nodeType": "ExpressionStatement",
                  "src": "3577:100:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11297,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11289,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3687:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11291,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11290,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3701:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3687:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11292,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3687:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11294,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11293,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3731:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3687:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11295,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "milestoneFundings",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7941,
                      "src": "3687:74:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11296,
                      "name": "_milestonesFundings",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11213,
                      "src": "3764:19:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "src": "3687:96:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                      "typeString": "uint256[] storage ref"
                    }
                  },
                  "id": 11298,
                  "nodeType": "ExpressionStatement",
                  "src": "3687:96:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11307,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11299,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3793:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11301,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11300,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3807:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3793:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11302,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3793:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11304,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11303,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3837:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3793:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11305,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "finalReward",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7938,
                      "src": "3793:68:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11306,
                      "name": "_finalReward",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11215,
                      "src": "3864:12:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3793:83:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11308,
                  "nodeType": "ExpressionStatement",
                  "src": "3793:83:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11314,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11309,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3886:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11311,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11310,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3900:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3886:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11312,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "endorser",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7976,
                      "src": "3886:35:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11313,
                      "name": "_endorser",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11210,
                      "src": "3924:9:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "3886:47:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11315,
                  "nodeType": "ExpressionStatement",
                  "src": "3886:47:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11321,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11316,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3943:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11318,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11317,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3957:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3943:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11319,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "finalVersion",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7969,
                      "src": "3943:39:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11320,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11204,
                      "src": "3985:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "3943:53:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11322,
                  "nodeType": "ExpressionStatement",
                  "src": "3943:53:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11331,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11323,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "4006:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11325,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11324,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "4020:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "4006:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11326,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "votingRounds",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7963,
                          "src": "4006:39:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                            "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                          }
                        },
                        "id": 11328,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11327,
                          "name": "_milestoneId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11206,
                          "src": "4046:12:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "4006:53:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage",
                          "typeString": "struct DaoStructs.Voting storage ref"
                        }
                      },
                      "id": 11329,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "startTime",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7907,
                      "src": "4006:63:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11330,
                      "name": "_previousVotingStart",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11217,
                      "src": "4072:20:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "4006:86:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11332,
                  "nodeType": "ExpressionStatement",
                  "src": "4006:86:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11341,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11333,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "4102:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11335,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11334,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "4116:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "4102:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11336,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "votingRounds",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7963,
                          "src": "4102:39:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                            "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                          }
                        },
                        "id": 11338,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11337,
                          "name": "_milestoneId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11206,
                          "src": "4142:12:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "4102:53:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage",
                          "typeString": "struct DaoStructs.Voting storage ref"
                        }
                      },
                      "id": 11339,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "claimed",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7927,
                      "src": "4102:61:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "74727565",
                      "id": 11340,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "bool",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4166:4:43",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "value": "true"
                    },
                    "src": "4102:68:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11342,
                  "nodeType": "ExpressionStatement",
                  "src": "4102:68:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11351,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11343,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "4180:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11345,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11344,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "4194:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "4180:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11346,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "votingRounds",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7963,
                          "src": "4180:39:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                            "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                          }
                        },
                        "id": 11348,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11347,
                          "name": "_milestoneId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11206,
                          "src": "4220:12:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "4180:53:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage",
                          "typeString": "struct DaoStructs.Voting storage ref"
                        }
                      },
                      "id": 11349,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "passed",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7925,
                      "src": "4180:60:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "74727565",
                      "id": 11350,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "bool",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4243:4:43",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "value": "true"
                    },
                    "src": "4180:67:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11352,
                  "nodeType": "ExpressionStatement",
                  "src": "4180:67:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11361,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11353,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "4257:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11355,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11354,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "4271:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "4257:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11356,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "votingRounds",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7963,
                          "src": "4257:39:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                            "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                          }
                        },
                        "id": 11358,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11357,
                          "name": "_milestoneId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11206,
                          "src": "4297:12:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "4257:53:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage",
                          "typeString": "struct DaoStructs.Voting storage ref"
                        }
                      },
                      "id": 11359,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "funded",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7929,
                      "src": "4257:60:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "74727565",
                      "id": 11360,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "bool",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4320:4:43",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "value": "true"
                    },
                    "src": "4257:67:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11362,
                  "nodeType": "ExpressionStatement",
                  "src": "4257:67:43"
                }
              ]
            },
            "documentation": null,
            "id": 11364,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "mock_put_proposal_in_milestone",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11218,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11204,
                  "name": "_proposalId",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2855:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11203,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2855:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11206,
                  "name": "_milestoneId",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2884:20:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11205,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2884:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11208,
                  "name": "_proposer",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2914:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11207,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2914:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11210,
                  "name": "_endorser",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2941:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11209,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2941:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11213,
                  "name": "_milestonesFundings",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2968:29:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11211,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "2968:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11212,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2968:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11215,
                  "name": "_finalReward",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "3007:20:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11214,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3007:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11217,
                  "name": "_previousVotingStart",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "3037:28:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11216,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3037:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2845:226:43"
            },
            "payable": false,
            "returnParameters": {
              "id": 11219,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3091:0:43"
            },
            "scope": 11464,
            "src": "2806:1525:43",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11462,
              "nodeType": "Block",
              "src": "5248:571:43",
              "statements": [
                {
                  "assignments": [
                    11389
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 11389,
                      "name": "_voting",
                      "nodeType": "VariableDeclaration",
                      "scope": 11463,
                      "src": "5258:33:43",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                        "typeString": "struct DaoStructs.Voting"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 11388,
                        "name": "DaoStructs.Voting",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 7930,
                        "src": "5258:17:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                          "typeString": "struct DaoStructs.Voting"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 11396,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11390,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "5294:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11392,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11391,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11366,
                          "src": "5308:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "5294:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11393,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "votingRounds",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7963,
                      "src": "5294:39:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                        "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                      }
                    },
                    "id": 11395,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 11394,
                      "name": "_roundIndex",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11368,
                      "src": "5334:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "5294:52:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Voting_$7930_storage",
                      "typeString": "struct DaoStructs.Voting storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "5258:88:43"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "id": 11397,
                    "name": "_isDraftPhase",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 11370,
                    "src": "5360:13:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 11416,
                    "nodeType": "Block",
                    "src": "5454:109:43",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11414,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 11406,
                                    "name": "proposalsById",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 16055,
                                    "src": "5468:13:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                      "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                    }
                                  },
                                  "id": 11408,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 11407,
                                    "name": "_proposalId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11366,
                                    "src": "5482:11:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "5468:26:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                    "typeString": "struct DaoStructs.Proposal storage ref"
                                  }
                                },
                                "id": 11409,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "votingRounds",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 7963,
                                "src": "5468:39:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                                  "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                                }
                              },
                              "id": 11411,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11410,
                                "name": "_roundIndex",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11368,
                                "src": "5508:11:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "5468:52:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Voting_$7930_storage",
                                "typeString": "struct DaoStructs.Voting storage ref"
                              }
                            },
                            "id": 11412,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "startTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7907,
                            "src": "5468:62:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 11413,
                            "name": "_startOfVotingRound",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11383,
                            "src": "5533:19:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "5468:84:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 11415,
                        "nodeType": "ExpressionStatement",
                        "src": "5468:84:43"
                      }
                    ]
                  },
                  "id": 11417,
                  "nodeType": "IfStatement",
                  "src": "5356:207:43",
                  "trueBody": {
                    "id": 11405,
                    "nodeType": "Block",
                    "src": "5375:73:43",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11403,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 11398,
                            "name": "_voting",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11389,
                            "src": "5389:7:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                              "typeString": "struct DaoStructs.Voting storage pointer"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "id": 11399,
                                "name": "proposalsById",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 16055,
                                "src": "5399:13:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                  "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                }
                              },
                              "id": 11401,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11400,
                                "name": "_proposalId",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11366,
                                "src": "5413:11:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "5399:26:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                "typeString": "struct DaoStructs.Proposal storage ref"
                              }
                            },
                            "id": 11402,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "draftVoting",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7959,
                            "src": "5399:38:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Voting_$7930_storage",
                              "typeString": "struct DaoStructs.Voting storage ref"
                            }
                          },
                          "src": "5389:48:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                            "typeString": "struct DaoStructs.Voting storage pointer"
                          }
                        },
                        "id": 11404,
                        "nodeType": "ExpressionStatement",
                        "src": "5389:48:43"
                      }
                    ]
                  }
                },
                {
                  "body": {
                    "id": 11460,
                    "nodeType": "Block",
                    "src": "5611:202:43",
                    "statements": [
                      {
                        "condition": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 11432,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11428,
                              "name": "_votes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11376,
                              "src": "5629:6:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                                "typeString": "bool[] memory"
                              }
                            },
                            "id": 11430,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11429,
                              "name": "i",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11419,
                              "src": "5636:1:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "5629:9:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "argumentTypes": null,
                            "hexValue": "74727565",
                            "id": 11431,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5642:4:43",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "true"
                          },
                          "src": "5629:17:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 11458,
                          "nodeType": "Block",
                          "src": "5729:74:43",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 11456,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 11446,
                                      "name": "_voting",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11389,
                                      "src": "5747:7:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                                        "typeString": "struct DaoStructs.Voting storage pointer"
                                      }
                                    },
                                    "id": 11451,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "noVotes",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 7923,
                                    "src": "5747:15:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                                      "typeString": "mapping(address => uint256)"
                                    }
                                  },
                                  "id": 11452,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11448,
                                      "name": "_voters",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11373,
                                      "src": "5763:7:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                        "typeString": "address[] memory"
                                      }
                                    },
                                    "id": 11450,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11449,
                                      "name": "i",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11419,
                                      "src": "5771:1:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "5763:10:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_address",
                                      "typeString": "address"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "5747:27:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 11453,
                                    "name": "_weights",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11379,
                                    "src": "5777:8:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                                      "typeString": "uint256[] memory"
                                    }
                                  },
                                  "id": 11455,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 11454,
                                    "name": "i",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11419,
                                    "src": "5786:1:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "5777:11:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "5747:41:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 11457,
                              "nodeType": "ExpressionStatement",
                              "src": "5747:41:43"
                            }
                          ]
                        },
                        "id": 11459,
                        "nodeType": "IfStatement",
                        "src": "5625:178:43",
                        "trueBody": {
                          "id": 11445,
                          "nodeType": "Block",
                          "src": "5648:75:43",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 11443,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 11433,
                                      "name": "_voting",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11389,
                                      "src": "5666:7:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                                        "typeString": "struct DaoStructs.Voting storage pointer"
                                      }
                                    },
                                    "id": 11438,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "yesVotes",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 7919,
                                    "src": "5666:16:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                                      "typeString": "mapping(address => uint256)"
                                    }
                                  },
                                  "id": 11439,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11435,
                                      "name": "_voters",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11373,
                                      "src": "5683:7:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                        "typeString": "address[] memory"
                                      }
                                    },
                                    "id": 11437,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11436,
                                      "name": "i",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11419,
                                      "src": "5691:1:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "5683:10:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_address",
                                      "typeString": "address"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "5666:28:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 11440,
                                    "name": "_weights",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11379,
                                    "src": "5697:8:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                                      "typeString": "uint256[] memory"
                                    }
                                  },
                                  "id": 11442,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 11441,
                                    "name": "i",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11419,
                                    "src": "5706:1:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "5697:11:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "5666:42:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 11444,
                              "nodeType": "ExpressionStatement",
                              "src": "5666:42:43"
                            }
                          ]
                        }
                      }
                    ]
                  },
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 11424,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 11422,
                      "name": "i",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11419,
                      "src": "5593:1:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "argumentTypes": null,
                      "id": 11423,
                      "name": "_length",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11381,
                      "src": "5597:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5593:11:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11461,
                  "initializationExpression": {
                    "assignments": [
                      11419
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 11419,
                        "name": "i",
                        "nodeType": "VariableDeclaration",
                        "scope": 11463,
                        "src": "5578:9:43",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 11418,
                          "name": "uint256",
                          "nodeType": "ElementaryTypeName",
                          "src": "5578:7:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "value": null,
                        "visibility": "internal"
                      }
                    ],
                    "id": 11421,
                    "initialValue": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 11420,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "5590:1:43",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "5578:13:43"
                  },
                  "loopExpression": {
                    "expression": {
                      "argumentTypes": null,
                      "id": 11426,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "5606:3:43",
                      "subExpression": {
                        "argumentTypes": null,
                        "id": 11425,
                        "name": "i",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11419,
                        "src": "5606:1:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11427,
                    "nodeType": "ExpressionStatement",
                    "src": "5606:3:43"
                  },
                  "nodeType": "ForStatement",
                  "src": "5573:240:43"
                }
              ]
            },
            "documentation": "@notice Mock function to add fake votes in the past for a proposal\n@dev This will never be available in the deployment, only for test purposes\n@param _proposalId ID of the proposal\n@param _roundIndex Index of the voting round\n@param _isDraftPhase Boolean, whether updating the votes for draft phase or not\n@param _voters Array of addresses of the voters\n@param _votes Boolean array of the votes (for or against)\n@param _weights Uint array of the voting weights\n@param _length Length of the above arrays (number of voters)\n@param _startOfVotingRound start of this voting round",
            "id": 11463,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "mock_put_past_votes",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11384,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11366,
                  "name": "_proposalId",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5006:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11365,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "5006:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11368,
                  "name": "_roundIndex",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5035:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11367,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "5035:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11370,
                  "name": "_isDraftPhase",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5064:18:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 11369,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "5064:4:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11373,
                  "name": "_voters",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5092:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11371,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "5092:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 11372,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "5092:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11376,
                  "name": "_votes",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5119:13:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11374,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "5119:4:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 11375,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "5119:6:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11379,
                  "name": "_weights",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5142:18:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11377,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "5142:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11378,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "5142:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11381,
                  "name": "_length",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5170:15:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11380,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "5170:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11383,
                  "name": "_startOfVotingRound",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5195:27:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11382,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "5195:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4996:232:43"
            },
            "payable": false,
            "returnParameters": {
              "id": 11385,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5248:0:43"
            },
            "scope": 11464,
            "src": "4968:851:43",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          }
        ],
        "scope": 11465,
        "src": "66:5755:43"
      }
    ],
    "src": "0:5822:43"
  },
  "legacyAST": {
    "absolutePath": "/Users/aeufemio/projects/dgx/contracts/dao-contracts/contracts/mock/storage/MockDaoStorage.sol",
    "exportedSymbols": {
      "MockDaoStorage": [
        11464
      ]
    },
    "id": 11465,
    "nodeType": "SourceUnit",
    "nodes": [
      {
        "id": 10988,
        "literals": [
          "solidity",
          "^",
          "0.4",
          ".25"
        ],
        "nodeType": "PragmaDirective",
        "src": "0:24:43"
      },
      {
        "absolutePath": "/Users/aeufemio/projects/dgx/contracts/dao-contracts/contracts/storage/DaoStorage.sol",
        "file": "../../storage/DaoStorage.sol",
        "id": 10989,
        "nodeType": "ImportDirective",
        "scope": 11465,
        "sourceUnit": 17875,
        "src": "26:38:43",
        "symbolAliases": [],
        "unitAlias": ""
      },
      {
        "baseContracts": [
          {
            "arguments": null,
            "baseName": {
              "contractScope": null,
              "id": 10990,
              "name": "DaoStorage",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 17874,
              "src": "93:10:43",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_DaoStorage_$17874",
                "typeString": "contract DaoStorage"
              }
            },
            "id": 10991,
            "nodeType": "InheritanceSpecifier",
            "src": "93:10:43"
          }
        ],
        "contractDependencies": [
          1629,
          1868,
          17874,
          18628,
          22049
        ],
        "contractKind": "contract",
        "documentation": null,
        "fullyImplemented": true,
        "id": 11464,
        "linearizedBaseContracts": [
          11464,
          17874,
          22049,
          1868,
          1629,
          18628
        ],
        "name": "MockDaoStorage",
        "nodeType": "ContractDefinition",
        "nodes": [
          {
            "id": 10994,
            "libraryName": {
              "contractScope": null,
              "id": 10992,
              "name": "DoublyLinkedList",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 25116,
              "src": "116:16:43",
              "typeDescriptions": {
                "typeIdentifier": "t_contract$_DoublyLinkedList_$25116",
                "typeString": "library DoublyLinkedList"
              }
            },
            "nodeType": "UsingForDirective",
            "src": "110:50:43",
            "typeName": {
              "contractScope": null,
              "id": 10993,
              "name": "DoublyLinkedList.Bytes",
              "nodeType": "UserDefinedTypeName",
              "referencedDeclaration": 22605,
              "src": "137:22:43",
              "typeDescriptions": {
                "typeIdentifier": "t_struct$_Bytes_$22605_storage_ptr",
                "typeString": "struct DoublyLinkedList.Bytes"
              }
            }
          },
          {
            "body": {
              "id": 11002,
              "nodeType": "Block",
              "src": "226:2:43",
              "statements": []
            },
            "documentation": null,
            "id": 11003,
            "implemented": true,
            "isConstructor": true,
            "isDeclaredConst": false,
            "modifiers": [
              {
                "arguments": [
                  {
                    "argumentTypes": null,
                    "id": 10999,
                    "name": "_resolver",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 10996,
                    "src": "215:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  }
                ],
                "id": 11000,
                "modifierName": {
                  "argumentTypes": null,
                  "id": 10998,
                  "name": "DaoStorage",
                  "nodeType": "Identifier",
                  "overloadedDeclarations": [],
                  "referencedDeclaration": 17874,
                  "src": "204:10:43",
                  "typeDescriptions": {
                    "typeIdentifier": "t_type$_t_contract$_DaoStorage_$17874_$",
                    "typeString": "type(contract DaoStorage)"
                  }
                },
                "nodeType": "ModifierInvocation",
                "src": "204:21:43"
              }
            ],
            "name": "",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 10997,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 10996,
                  "name": "_resolver",
                  "nodeType": "VariableDeclaration",
                  "scope": 11003,
                  "src": "178:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 10995,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "178:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "177:19:43"
            },
            "payable": false,
            "returnParameters": {
              "id": 11001,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "226:0:43"
            },
            "scope": 11464,
            "src": "166:62:43",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11201,
              "nodeType": "Block",
              "src": "1076:1724:43",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 11024,
                        "name": "_proposalId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11005,
                        "src": "1106:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 11021,
                        "name": "allProposals",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 16051,
                        "src": "1086:12:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                          "typeString": "struct DoublyLinkedList.Bytes storage ref"
                        }
                      },
                      "id": 11023,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "append",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24585,
                      "src": "1086:19:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                        "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                      }
                    },
                    "id": 11025,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1086:32:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11026,
                  "nodeType": "ExpressionStatement",
                  "src": "1086:32:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11032,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11027,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1128:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11029,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11028,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1142:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1128:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11030,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "proposalId",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7947,
                      "src": "1128:37:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11031,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11005,
                      "src": "1168:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "1128:51:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11033,
                  "nodeType": "ExpressionStatement",
                  "src": "1128:51:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11039,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11034,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1189:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11036,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11035,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1203:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1189:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11037,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "proposer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7974,
                      "src": "1189:35:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11038,
                      "name": "_proposer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11011,
                      "src": "1227:9:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "1189:47:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11040,
                  "nodeType": "ExpressionStatement",
                  "src": "1189:47:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11049,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11041,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1246:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11043,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11042,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1260:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1246:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11044,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "timeCreated",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7951,
                      "src": "1246:38:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 11048,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 11045,
                        "name": "now",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 26184,
                        "src": "1287:3:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "-",
                      "rightExpression": {
                        "argumentTypes": null,
                        "components": [
                          {
                            "argumentTypes": null,
                            "hexValue": "31",
                            "id": 11046,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "1294:9:43",
                            "subdenomination": "minutes",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_60_by_1",
                              "typeString": "int_const 60"
                            },
                            "value": "1"
                          }
                        ],
                        "id": 11047,
                        "isConstant": false,
                        "isInlineArray": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "TupleExpression",
                        "src": "1293:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_60_by_1",
                          "typeString": "int_const 60"
                        }
                      },
                      "src": "1287:17:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1246:58:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11050,
                  "nodeType": "ExpressionStatement",
                  "src": "1246:58:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 11056,
                        "name": "_proposalId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11005,
                        "src": "1368:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "id": 11051,
                            "name": "proposalsById",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 16055,
                            "src": "1314:13:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                              "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                            }
                          },
                          "id": 11053,
                          "indexExpression": {
                            "argumentTypes": null,
                            "id": 11052,
                            "name": "_proposalId",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11005,
                            "src": "1328:11:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "1314:26:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                            "typeString": "struct DaoStructs.Proposal storage ref"
                          }
                        },
                        "id": 11054,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "proposalVersionDocs",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 7953,
                        "src": "1314:46:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                          "typeString": "struct DoublyLinkedList.Bytes storage ref"
                        }
                      },
                      "id": 11055,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "append",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24585,
                      "src": "1314:53:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                        "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                      }
                    },
                    "id": 11057,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "1314:66:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11058,
                  "nodeType": "ExpressionStatement",
                  "src": "1314:66:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11067,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11059,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1390:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11061,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11060,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1404:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1390:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11062,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1390:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11064,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11063,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1434:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1390:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11065,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "docIpfsHash",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7932,
                      "src": "1390:68:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11066,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11005,
                      "src": "1461:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "1390:82:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11068,
                  "nodeType": "ExpressionStatement",
                  "src": "1390:82:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11077,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11069,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1482:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11071,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11070,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1496:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1482:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11072,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1482:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11074,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11073,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1526:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1482:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11075,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "created",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7934,
                      "src": "1482:64:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11076,
                      "name": "now",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 26184,
                      "src": "1549:3:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1482:70:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11078,
                  "nodeType": "ExpressionStatement",
                  "src": "1482:70:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11088,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11079,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1562:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11081,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11080,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1576:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1562:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11082,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1562:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11084,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11083,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1606:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1562:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11085,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "milestoneCount",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7936,
                      "src": "1562:71:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 11086,
                        "name": "_milestonesFundings",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11016,
                        "src": "1636:19:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                          "typeString": "uint256[] memory"
                        }
                      },
                      "id": 11087,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": null,
                      "src": "1636:26:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1562:100:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11089,
                  "nodeType": "ExpressionStatement",
                  "src": "1562:100:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11098,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11090,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1672:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11092,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11091,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1686:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1672:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11093,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1672:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11095,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11094,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1716:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1672:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11096,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "milestoneFundings",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7941,
                      "src": "1672:74:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11097,
                      "name": "_milestonesFundings",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11016,
                      "src": "1749:19:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "src": "1672:96:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                      "typeString": "uint256[] storage ref"
                    }
                  },
                  "id": 11099,
                  "nodeType": "ExpressionStatement",
                  "src": "1672:96:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11108,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11100,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "1778:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11102,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11101,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "1792:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "1778:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11103,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "1778:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11105,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11104,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1822:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1778:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11106,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "finalReward",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7938,
                      "src": "1778:68:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11107,
                      "name": "_finalReward",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11018,
                      "src": "1849:12:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "1778:83:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11109,
                  "nodeType": "ExpressionStatement",
                  "src": "1778:83:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11115,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11110,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1871:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11112,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11111,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1885:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1871:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11113,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "endorser",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7976,
                      "src": "1871:35:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11114,
                      "name": "_endorser",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11013,
                      "src": "1909:9:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "1871:47:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11116,
                  "nodeType": "ExpressionStatement",
                  "src": "1871:47:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11122,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11117,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1928:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11119,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11118,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "1942:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1928:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11120,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "finalVersion",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7969,
                      "src": "1928:39:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11121,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11005,
                      "src": "1970:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "1928:53:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11123,
                  "nodeType": "ExpressionStatement",
                  "src": "1928:53:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11129,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11124,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "1991:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11126,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11125,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11005,
                          "src": "2005:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "1991:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11127,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "collateralAmount",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7967,
                      "src": "1991:43:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "32",
                      "id": 11128,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "2037:7:43",
                      "subdenomination": "ether",
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_2000000000000000000_by_1",
                        "typeString": "int_const 2000000000000000000"
                      },
                      "value": "2"
                    },
                    "src": "1991:53:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11130,
                  "nodeType": "ExpressionStatement",
                  "src": "1991:53:43"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "id": 11131,
                    "name": "_isDraftPhase",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 11009,
                    "src": "2058:13:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 11199,
                    "nodeType": "Block",
                    "src": "2306:488:43",
                    "statements": [
                      {
                        "condition": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          },
                          "id": 11157,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "id": 11155,
                            "name": "_roundIndex",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11007,
                            "src": "2324:11:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "argumentTypes": null,
                            "hexValue": "30",
                            "id": 11156,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "2339:1:43",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_0_by_1",
                              "typeString": "int_const 0"
                            },
                            "value": "0"
                          },
                          "src": "2324:16:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 11187,
                          "nodeType": "Block",
                          "src": "2527:175:43",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 11177,
                                    "name": "_proposalId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11005,
                                    "src": "2593:11:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11173,
                                      "name": "proposalsByState",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 16059,
                                      "src": "2545:16:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Bytes_$22605_storage_$",
                                        "typeString": "mapping(bytes32 => struct DoublyLinkedList.Bytes storage ref)"
                                      }
                                    },
                                    "id": 11175,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11174,
                                      "name": "PROPOSAL_STATE_ONGOING",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 1310,
                                      "src": "2562:22:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "2545:40:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                                      "typeString": "struct DoublyLinkedList.Bytes storage ref"
                                    }
                                  },
                                  "id": 11176,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "append",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 24585,
                                  "src": "2545:47:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                                    "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                                  }
                                },
                                "id": 11178,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "2545:60:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "id": 11179,
                              "nodeType": "ExpressionStatement",
                              "src": "2545:60:43"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 11185,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11180,
                                      "name": "proposalsById",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 16055,
                                      "src": "2623:13:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                        "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                      }
                                    },
                                    "id": 11182,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11181,
                                      "name": "_proposalId",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11005,
                                      "src": "2637:11:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "2623:26:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                      "typeString": "struct DaoStructs.Proposal storage ref"
                                    }
                                  },
                                  "id": 11183,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "memberName": "currentState",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 7949,
                                  "src": "2623:39:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "id": 11184,
                                  "name": "PROPOSAL_STATE_ONGOING",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 1310,
                                  "src": "2665:22:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "src": "2623:64:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "id": 11186,
                              "nodeType": "ExpressionStatement",
                              "src": "2623:64:43"
                            }
                          ]
                        },
                        "id": 11188,
                        "nodeType": "IfStatement",
                        "src": "2320:382:43",
                        "trueBody": {
                          "id": 11172,
                          "nodeType": "Block",
                          "src": "2342:179:43",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "arguments": [
                                  {
                                    "argumentTypes": null,
                                    "id": 11162,
                                    "name": "_proposalId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11005,
                                    "src": "2410:11:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  }
                                ],
                                "expression": {
                                  "argumentTypes": [
                                    {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  ],
                                  "expression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11158,
                                      "name": "proposalsByState",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 16059,
                                      "src": "2360:16:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Bytes_$22605_storage_$",
                                        "typeString": "mapping(bytes32 => struct DoublyLinkedList.Bytes storage ref)"
                                      }
                                    },
                                    "id": 11160,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11159,
                                      "name": "PROPOSAL_STATE_MODERATED",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 1307,
                                      "src": "2377:24:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "2360:42:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                                      "typeString": "struct DoublyLinkedList.Bytes storage ref"
                                    }
                                  },
                                  "id": 11161,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "memberName": "append",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 24585,
                                  "src": "2360:49:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                                    "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                                  }
                                },
                                "id": 11163,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "kind": "functionCall",
                                "lValueRequested": false,
                                "names": [],
                                "nodeType": "FunctionCall",
                                "src": "2360:62:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bool",
                                  "typeString": "bool"
                                }
                              },
                              "id": 11164,
                              "nodeType": "ExpressionStatement",
                              "src": "2360:62:43"
                            },
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 11170,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "expression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11165,
                                      "name": "proposalsById",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 16055,
                                      "src": "2440:13:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                        "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                      }
                                    },
                                    "id": 11167,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11166,
                                      "name": "_proposalId",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11005,
                                      "src": "2454:11:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_bytes32",
                                        "typeString": "bytes32"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "2440:26:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                      "typeString": "struct DaoStructs.Proposal storage ref"
                                    }
                                  },
                                  "id": 11168,
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "memberName": "currentState",
                                  "nodeType": "MemberAccess",
                                  "referencedDeclaration": 7949,
                                  "src": "2440:39:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "id": 11169,
                                  "name": "PROPOSAL_STATE_MODERATED",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 1307,
                                  "src": "2482:24:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "src": "2440:66:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "id": 11171,
                              "nodeType": "ExpressionStatement",
                              "src": "2440:66:43"
                            }
                          ]
                        }
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11197,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 11189,
                                    "name": "proposalsById",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 16055,
                                    "src": "2715:13:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                      "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                    }
                                  },
                                  "id": 11191,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 11190,
                                    "name": "_proposalId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11005,
                                    "src": "2729:11:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "2715:26:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                    "typeString": "struct DaoStructs.Proposal storage ref"
                                  }
                                },
                                "id": 11192,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "votingRounds",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 7963,
                                "src": "2715:39:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                                  "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                                }
                              },
                              "id": 11194,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11193,
                                "name": "_roundIndex",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11007,
                                "src": "2755:11:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "2715:52:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Voting_$7930_storage",
                                "typeString": "struct DaoStructs.Voting storage ref"
                              }
                            },
                            "id": 11195,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "startTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7907,
                            "src": "2715:62:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 11196,
                            "name": "now",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 26184,
                            "src": "2780:3:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "2715:68:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 11198,
                        "nodeType": "ExpressionStatement",
                        "src": "2715:68:43"
                      }
                    ]
                  },
                  "id": 11200,
                  "nodeType": "IfStatement",
                  "src": "2054:740:43",
                  "trueBody": {
                    "id": 11154,
                    "nodeType": "Block",
                    "src": "2073:227:43",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "arguments": [
                            {
                              "argumentTypes": null,
                              "id": 11136,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11005,
                              "src": "2133:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            }
                          ],
                          "expression": {
                            "argumentTypes": [
                              {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            ],
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "id": 11132,
                                "name": "proposalsByState",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 16059,
                                "src": "2087:16:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Bytes_$22605_storage_$",
                                  "typeString": "mapping(bytes32 => struct DoublyLinkedList.Bytes storage ref)"
                                }
                              },
                              "id": 11134,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11133,
                                "name": "PROPOSAL_STATE_DRAFT",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 1304,
                                "src": "2104:20:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "2087:38:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                                "typeString": "struct DoublyLinkedList.Bytes storage ref"
                              }
                            },
                            "id": 11135,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "append",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 24585,
                            "src": "2087:45:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                              "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                            }
                          },
                          "id": 11137,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "kind": "functionCall",
                          "lValueRequested": false,
                          "names": [],
                          "nodeType": "FunctionCall",
                          "src": "2087:58:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "id": 11138,
                        "nodeType": "ExpressionStatement",
                        "src": "2087:58:43"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11144,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "id": 11139,
                                "name": "proposalsById",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 16055,
                                "src": "2159:13:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                  "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                }
                              },
                              "id": 11141,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11140,
                                "name": "_proposalId",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11005,
                                "src": "2173:11:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "2159:26:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                "typeString": "struct DaoStructs.Proposal storage ref"
                              }
                            },
                            "id": 11142,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "currentState",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7949,
                            "src": "2159:39:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 11143,
                            "name": "PROPOSAL_STATE_DRAFT",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 1304,
                            "src": "2201:20:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          "src": "2159:62:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "id": 11145,
                        "nodeType": "ExpressionStatement",
                        "src": "2159:62:43"
                      },
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11152,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "expression": {
                                "argumentTypes": null,
                                "baseExpression": {
                                  "argumentTypes": null,
                                  "id": 11146,
                                  "name": "proposalsById",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 16055,
                                  "src": "2235:13:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                    "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                  }
                                },
                                "id": 11148,
                                "indexExpression": {
                                  "argumentTypes": null,
                                  "id": 11147,
                                  "name": "_proposalId",
                                  "nodeType": "Identifier",
                                  "overloadedDeclarations": [],
                                  "referencedDeclaration": 11005,
                                  "src": "2249:11:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_bytes32",
                                    "typeString": "bytes32"
                                  }
                                },
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "nodeType": "IndexAccess",
                                "src": "2235:26:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                  "typeString": "struct DaoStructs.Proposal storage ref"
                                }
                              },
                              "id": 11149,
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "memberName": "draftVoting",
                              "nodeType": "MemberAccess",
                              "referencedDeclaration": 7959,
                              "src": "2235:38:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Voting_$7930_storage",
                                "typeString": "struct DaoStructs.Voting storage ref"
                              }
                            },
                            "id": 11150,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "startTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7907,
                            "src": "2235:48:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 11151,
                            "name": "now",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 26184,
                            "src": "2286:3:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "2235:54:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 11153,
                        "nodeType": "ExpressionStatement",
                        "src": "2235:54:43"
                      }
                    ]
                  }
                }
              ]
            },
            "documentation": "@notice Function to mock add new proposal in pre-defined state\n@dev Note that this function will only be called during the tests\n@param _proposalId ID of the proposal, i.e. IPFS doc hash\n@param _roundIndex Index of the voting round, if not draft phase\n@param _proposer Address of the proposer\n@param _endorser Address of the endorser\n@param _milestonesFundings Uint Array of the milestone fundings\n@param _isDraftPhase Boolean, true if adding proposal in draft phase\n@param _finalReward Final rewards on completion of proposal",
            "id": 11202,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "mock_put_proposal_as",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11019,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11005,
                  "name": "_proposalId",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "851:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11004,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "851:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11007,
                  "name": "_roundIndex",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "880:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11006,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "880:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11009,
                  "name": "_isDraftPhase",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "909:18:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 11008,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "909:4:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11011,
                  "name": "_proposer",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "937:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11010,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "937:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11013,
                  "name": "_endorser",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "964:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11012,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "964:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11016,
                  "name": "_milestonesFundings",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "991:29:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11014,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "991:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11015,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "991:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11018,
                  "name": "_finalReward",
                  "nodeType": "VariableDeclaration",
                  "scope": 11202,
                  "src": "1030:20:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11017,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "1030:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "841:215:43"
            },
            "payable": false,
            "returnParameters": {
              "id": 11020,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "1076:0:43"
            },
            "scope": 11464,
            "src": "812:1988:43",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11363,
              "nodeType": "Block",
              "src": "3091:1240:43",
              "statements": [
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 11223,
                        "name": "_proposalId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11204,
                        "src": "3121:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "id": 11220,
                        "name": "allProposals",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 16051,
                        "src": "3101:12:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                          "typeString": "struct DoublyLinkedList.Bytes storage ref"
                        }
                      },
                      "id": 11222,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "append",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24585,
                      "src": "3101:19:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                        "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                      }
                    },
                    "id": 11224,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3101:32:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11225,
                  "nodeType": "ExpressionStatement",
                  "src": "3101:32:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11231,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11226,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3143:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11228,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11227,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3157:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3143:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11229,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "proposalId",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7947,
                      "src": "3143:37:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11230,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11204,
                      "src": "3183:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "3143:51:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11232,
                  "nodeType": "ExpressionStatement",
                  "src": "3143:51:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11238,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11233,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3204:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11235,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11234,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3218:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3204:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11236,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "proposer",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7974,
                      "src": "3204:35:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11237,
                      "name": "_proposer",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11208,
                      "src": "3242:9:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "3204:47:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11239,
                  "nodeType": "ExpressionStatement",
                  "src": "3204:47:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11248,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11240,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3261:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11242,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11241,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3275:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3261:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11243,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "timeCreated",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7951,
                      "src": "3261:38:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "commonType": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      },
                      "id": 11247,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "leftExpression": {
                        "argumentTypes": null,
                        "id": 11244,
                        "name": "now",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 26184,
                        "src": "3302:3:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "nodeType": "BinaryOperation",
                      "operator": "-",
                      "rightExpression": {
                        "argumentTypes": null,
                        "components": [
                          {
                            "argumentTypes": null,
                            "hexValue": "35",
                            "id": 11245,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "number",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "3309:9:43",
                            "subdenomination": "minutes",
                            "typeDescriptions": {
                              "typeIdentifier": "t_rational_300_by_1",
                              "typeString": "int_const 300"
                            },
                            "value": "5"
                          }
                        ],
                        "id": 11246,
                        "isConstant": false,
                        "isInlineArray": false,
                        "isLValue": false,
                        "isPure": true,
                        "lValueRequested": false,
                        "nodeType": "TupleExpression",
                        "src": "3308:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_rational_300_by_1",
                          "typeString": "int_const 300"
                        }
                      },
                      "src": "3302:17:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3261:58:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11249,
                  "nodeType": "ExpressionStatement",
                  "src": "3261:58:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "arguments": [
                      {
                        "argumentTypes": null,
                        "id": 11255,
                        "name": "_proposalId",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11204,
                        "src": "3383:11:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      }
                    ],
                    "expression": {
                      "argumentTypes": [
                        {
                          "typeIdentifier": "t_bytes32",
                          "typeString": "bytes32"
                        }
                      ],
                      "expression": {
                        "argumentTypes": null,
                        "expression": {
                          "argumentTypes": null,
                          "baseExpression": {
                            "argumentTypes": null,
                            "id": 11250,
                            "name": "proposalsById",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 16055,
                            "src": "3329:13:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                              "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                            }
                          },
                          "id": 11252,
                          "indexExpression": {
                            "argumentTypes": null,
                            "id": 11251,
                            "name": "_proposalId",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11204,
                            "src": "3343:11:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bytes32",
                              "typeString": "bytes32"
                            }
                          },
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "nodeType": "IndexAccess",
                          "src": "3329:26:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                            "typeString": "struct DaoStructs.Proposal storage ref"
                          }
                        },
                        "id": 11253,
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "memberName": "proposalVersionDocs",
                        "nodeType": "MemberAccess",
                        "referencedDeclaration": 7953,
                        "src": "3329:46:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Bytes_$22605_storage",
                          "typeString": "struct DoublyLinkedList.Bytes storage ref"
                        }
                      },
                      "id": 11254,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "append",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 24585,
                      "src": "3329:53:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_function_delegatecall_nonpayable$_t_struct$_Bytes_$22605_storage_ptr_$_t_bytes32_$returns$_t_bool_$bound_to$_t_struct$_Bytes_$22605_storage_ptr_$",
                        "typeString": "function (struct DoublyLinkedList.Bytes storage pointer,bytes32) returns (bool)"
                      }
                    },
                    "id": 11256,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "kind": "functionCall",
                    "lValueRequested": false,
                    "names": [],
                    "nodeType": "FunctionCall",
                    "src": "3329:66:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11257,
                  "nodeType": "ExpressionStatement",
                  "src": "3329:66:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11266,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11258,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3405:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11260,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11259,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3419:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3405:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11261,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3405:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11263,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11262,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3449:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3405:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11264,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "docIpfsHash",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7932,
                      "src": "3405:68:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11265,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11204,
                      "src": "3476:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "3405:82:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11267,
                  "nodeType": "ExpressionStatement",
                  "src": "3405:82:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11276,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11268,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3497:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11270,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11269,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3511:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3497:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11271,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3497:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11273,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11272,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3541:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3497:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11274,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "created",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7934,
                      "src": "3497:64:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11275,
                      "name": "now",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 26184,
                      "src": "3564:3:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3497:70:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11277,
                  "nodeType": "ExpressionStatement",
                  "src": "3497:70:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11287,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11278,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3577:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11280,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11279,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3591:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3577:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11281,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3577:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11283,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11282,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3621:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3577:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11284,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "milestoneCount",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7936,
                      "src": "3577:71:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "id": 11285,
                        "name": "_milestonesFundings",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11213,
                        "src": "3651:19:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                          "typeString": "uint256[] memory"
                        }
                      },
                      "id": 11286,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "length",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": null,
                      "src": "3651:26:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3577:100:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11288,
                  "nodeType": "ExpressionStatement",
                  "src": "3577:100:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11297,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11289,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3687:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11291,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11290,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3701:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3687:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11292,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3687:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11294,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11293,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3731:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3687:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11295,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "milestoneFundings",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7941,
                      "src": "3687:74:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                        "typeString": "uint256[] storage ref"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11296,
                      "name": "_milestonesFundings",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11213,
                      "src": "3764:19:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                        "typeString": "uint256[] memory"
                      }
                    },
                    "src": "3687:96:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage",
                      "typeString": "uint256[] storage ref"
                    }
                  },
                  "id": 11298,
                  "nodeType": "ExpressionStatement",
                  "src": "3687:96:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11307,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11299,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "3793:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11301,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11300,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "3807:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "3793:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11302,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "proposalVersions",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7957,
                          "src": "3793:43:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_ProposalVersion_$7945_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.ProposalVersion storage ref)"
                          }
                        },
                        "id": 11304,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11303,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3837:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3793:56:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_ProposalVersion_$7945_storage",
                          "typeString": "struct DaoStructs.ProposalVersion storage ref"
                        }
                      },
                      "id": 11305,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "finalReward",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7938,
                      "src": "3793:68:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11306,
                      "name": "_finalReward",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11215,
                      "src": "3864:12:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "3793:83:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11308,
                  "nodeType": "ExpressionStatement",
                  "src": "3793:83:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11314,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11309,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3886:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11311,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11310,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3900:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3886:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11312,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "endorser",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7976,
                      "src": "3886:35:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11313,
                      "name": "_endorser",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11210,
                      "src": "3924:9:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "src": "3886:47:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "id": 11315,
                  "nodeType": "ExpressionStatement",
                  "src": "3886:47:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11321,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11316,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "3943:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11318,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11317,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11204,
                          "src": "3957:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "3943:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11319,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "finalVersion",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7969,
                      "src": "3943:39:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11320,
                      "name": "_proposalId",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11204,
                      "src": "3985:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bytes32",
                        "typeString": "bytes32"
                      }
                    },
                    "src": "3943:53:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "id": 11322,
                  "nodeType": "ExpressionStatement",
                  "src": "3943:53:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11331,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11323,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "4006:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11325,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11324,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "4020:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "4006:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11326,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "votingRounds",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7963,
                          "src": "4006:39:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                            "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                          }
                        },
                        "id": 11328,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11327,
                          "name": "_milestoneId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11206,
                          "src": "4046:12:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "4006:53:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage",
                          "typeString": "struct DaoStructs.Voting storage ref"
                        }
                      },
                      "id": 11329,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "startTime",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7907,
                      "src": "4006:63:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "id": 11330,
                      "name": "_previousVotingStart",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11217,
                      "src": "4072:20:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "4006:86:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "id": 11332,
                  "nodeType": "ExpressionStatement",
                  "src": "4006:86:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11341,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11333,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "4102:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11335,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11334,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "4116:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "4102:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11336,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "votingRounds",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7963,
                          "src": "4102:39:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                            "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                          }
                        },
                        "id": 11338,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11337,
                          "name": "_milestoneId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11206,
                          "src": "4142:12:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "4102:53:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage",
                          "typeString": "struct DaoStructs.Voting storage ref"
                        }
                      },
                      "id": 11339,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "claimed",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7927,
                      "src": "4102:61:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "74727565",
                      "id": 11340,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "bool",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4166:4:43",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "value": "true"
                    },
                    "src": "4102:68:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11342,
                  "nodeType": "ExpressionStatement",
                  "src": "4102:68:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11351,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11343,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "4180:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11345,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11344,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "4194:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "4180:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11346,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "votingRounds",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7963,
                          "src": "4180:39:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                            "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                          }
                        },
                        "id": 11348,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11347,
                          "name": "_milestoneId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11206,
                          "src": "4220:12:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "4180:53:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage",
                          "typeString": "struct DaoStructs.Voting storage ref"
                        }
                      },
                      "id": 11349,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "passed",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7925,
                      "src": "4180:60:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "74727565",
                      "id": 11350,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "bool",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4243:4:43",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "value": "true"
                    },
                    "src": "4180:67:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11352,
                  "nodeType": "ExpressionStatement",
                  "src": "4180:67:43"
                },
                {
                  "expression": {
                    "argumentTypes": null,
                    "id": 11361,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftHandSide": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "expression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11353,
                              "name": "proposalsById",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 16055,
                              "src": "4257:13:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                              }
                            },
                            "id": 11355,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11354,
                              "name": "_proposalId",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11204,
                              "src": "4271:11:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_bytes32",
                                "typeString": "bytes32"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "4257:26:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                              "typeString": "struct DaoStructs.Proposal storage ref"
                            }
                          },
                          "id": 11356,
                          "isConstant": false,
                          "isLValue": true,
                          "isPure": false,
                          "lValueRequested": false,
                          "memberName": "votingRounds",
                          "nodeType": "MemberAccess",
                          "referencedDeclaration": 7963,
                          "src": "4257:39:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                            "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                          }
                        },
                        "id": 11358,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11357,
                          "name": "_milestoneId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11206,
                          "src": "4297:12:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "4257:53:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage",
                          "typeString": "struct DaoStructs.Voting storage ref"
                        }
                      },
                      "id": 11359,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": true,
                      "memberName": "funded",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7929,
                      "src": "4257:60:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "nodeType": "Assignment",
                    "operator": "=",
                    "rightHandSide": {
                      "argumentTypes": null,
                      "hexValue": "74727565",
                      "id": 11360,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "bool",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "4320:4:43",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      },
                      "value": "true"
                    },
                    "src": "4257:67:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11362,
                  "nodeType": "ExpressionStatement",
                  "src": "4257:67:43"
                }
              ]
            },
            "documentation": null,
            "id": 11364,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "mock_put_proposal_in_milestone",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11218,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11204,
                  "name": "_proposalId",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2855:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11203,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "2855:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11206,
                  "name": "_milestoneId",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2884:20:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11205,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "2884:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11208,
                  "name": "_proposer",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2914:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11207,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2914:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11210,
                  "name": "_endorser",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2941:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_address",
                    "typeString": "address"
                  },
                  "typeName": {
                    "id": 11209,
                    "name": "address",
                    "nodeType": "ElementaryTypeName",
                    "src": "2941:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_address",
                      "typeString": "address"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11213,
                  "name": "_milestonesFundings",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "2968:29:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11211,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "2968:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11212,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "2968:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11215,
                  "name": "_finalReward",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "3007:20:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11214,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3007:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11217,
                  "name": "_previousVotingStart",
                  "nodeType": "VariableDeclaration",
                  "scope": 11364,
                  "src": "3037:28:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11216,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "3037:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "2845:226:43"
            },
            "payable": false,
            "returnParameters": {
              "id": 11219,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "3091:0:43"
            },
            "scope": 11464,
            "src": "2806:1525:43",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          },
          {
            "body": {
              "id": 11462,
              "nodeType": "Block",
              "src": "5248:571:43",
              "statements": [
                {
                  "assignments": [
                    11389
                  ],
                  "declarations": [
                    {
                      "constant": false,
                      "id": 11389,
                      "name": "_voting",
                      "nodeType": "VariableDeclaration",
                      "scope": 11463,
                      "src": "5258:33:43",
                      "stateVariable": false,
                      "storageLocation": "storage",
                      "typeDescriptions": {
                        "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                        "typeString": "struct DaoStructs.Voting"
                      },
                      "typeName": {
                        "contractScope": null,
                        "id": 11388,
                        "name": "DaoStructs.Voting",
                        "nodeType": "UserDefinedTypeName",
                        "referencedDeclaration": 7930,
                        "src": "5258:17:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                          "typeString": "struct DaoStructs.Voting"
                        }
                      },
                      "value": null,
                      "visibility": "internal"
                    }
                  ],
                  "id": 11396,
                  "initialValue": {
                    "argumentTypes": null,
                    "baseExpression": {
                      "argumentTypes": null,
                      "expression": {
                        "argumentTypes": null,
                        "baseExpression": {
                          "argumentTypes": null,
                          "id": 11390,
                          "name": "proposalsById",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 16055,
                          "src": "5294:13:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                            "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                          }
                        },
                        "id": 11392,
                        "indexExpression": {
                          "argumentTypes": null,
                          "id": 11391,
                          "name": "_proposalId",
                          "nodeType": "Identifier",
                          "overloadedDeclarations": [],
                          "referencedDeclaration": 11366,
                          "src": "5308:11:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bytes32",
                            "typeString": "bytes32"
                          }
                        },
                        "isConstant": false,
                        "isLValue": true,
                        "isPure": false,
                        "lValueRequested": false,
                        "nodeType": "IndexAccess",
                        "src": "5294:26:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                          "typeString": "struct DaoStructs.Proposal storage ref"
                        }
                      },
                      "id": 11393,
                      "isConstant": false,
                      "isLValue": true,
                      "isPure": false,
                      "lValueRequested": false,
                      "memberName": "votingRounds",
                      "nodeType": "MemberAccess",
                      "referencedDeclaration": 7963,
                      "src": "5294:39:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                        "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                      }
                    },
                    "id": 11395,
                    "indexExpression": {
                      "argumentTypes": null,
                      "id": 11394,
                      "name": "_roundIndex",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11368,
                      "src": "5334:11:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "isConstant": false,
                    "isLValue": true,
                    "isPure": false,
                    "lValueRequested": false,
                    "nodeType": "IndexAccess",
                    "src": "5294:52:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_struct$_Voting_$7930_storage",
                      "typeString": "struct DaoStructs.Voting storage ref"
                    }
                  },
                  "nodeType": "VariableDeclarationStatement",
                  "src": "5258:88:43"
                },
                {
                  "condition": {
                    "argumentTypes": null,
                    "id": 11397,
                    "name": "_isDraftPhase",
                    "nodeType": "Identifier",
                    "overloadedDeclarations": [],
                    "referencedDeclaration": 11370,
                    "src": "5360:13:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "falseBody": {
                    "id": 11416,
                    "nodeType": "Block",
                    "src": "5454:109:43",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11414,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "expression": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 11406,
                                    "name": "proposalsById",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 16055,
                                    "src": "5468:13:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                      "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                    }
                                  },
                                  "id": 11408,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 11407,
                                    "name": "_proposalId",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11366,
                                    "src": "5482:11:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_bytes32",
                                      "typeString": "bytes32"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "5468:26:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                    "typeString": "struct DaoStructs.Proposal storage ref"
                                  }
                                },
                                "id": 11409,
                                "isConstant": false,
                                "isLValue": true,
                                "isPure": false,
                                "lValueRequested": false,
                                "memberName": "votingRounds",
                                "nodeType": "MemberAccess",
                                "referencedDeclaration": 7963,
                                "src": "5468:39:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_uint256_$_t_struct$_Voting_$7930_storage_$",
                                  "typeString": "mapping(uint256 => struct DaoStructs.Voting storage ref)"
                                }
                              },
                              "id": 11411,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11410,
                                "name": "_roundIndex",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11368,
                                "src": "5508:11:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "5468:52:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Voting_$7930_storage",
                                "typeString": "struct DaoStructs.Voting storage ref"
                              }
                            },
                            "id": 11412,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": true,
                            "memberName": "startTime",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7907,
                            "src": "5468:62:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "id": 11413,
                            "name": "_startOfVotingRound",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11383,
                            "src": "5533:19:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_uint256",
                              "typeString": "uint256"
                            }
                          },
                          "src": "5468:84:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "id": 11415,
                        "nodeType": "ExpressionStatement",
                        "src": "5468:84:43"
                      }
                    ]
                  },
                  "id": 11417,
                  "nodeType": "IfStatement",
                  "src": "5356:207:43",
                  "trueBody": {
                    "id": 11405,
                    "nodeType": "Block",
                    "src": "5375:73:43",
                    "statements": [
                      {
                        "expression": {
                          "argumentTypes": null,
                          "id": 11403,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftHandSide": {
                            "argumentTypes": null,
                            "id": 11398,
                            "name": "_voting",
                            "nodeType": "Identifier",
                            "overloadedDeclarations": [],
                            "referencedDeclaration": 11389,
                            "src": "5389:7:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                              "typeString": "struct DaoStructs.Voting storage pointer"
                            }
                          },
                          "nodeType": "Assignment",
                          "operator": "=",
                          "rightHandSide": {
                            "argumentTypes": null,
                            "expression": {
                              "argumentTypes": null,
                              "baseExpression": {
                                "argumentTypes": null,
                                "id": 11399,
                                "name": "proposalsById",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 16055,
                                "src": "5399:13:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_mapping$_t_bytes32_$_t_struct$_Proposal_$7981_storage_$",
                                  "typeString": "mapping(bytes32 => struct DaoStructs.Proposal storage ref)"
                                }
                              },
                              "id": 11401,
                              "indexExpression": {
                                "argumentTypes": null,
                                "id": 11400,
                                "name": "_proposalId",
                                "nodeType": "Identifier",
                                "overloadedDeclarations": [],
                                "referencedDeclaration": 11366,
                                "src": "5413:11:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_bytes32",
                                  "typeString": "bytes32"
                                }
                              },
                              "isConstant": false,
                              "isLValue": true,
                              "isPure": false,
                              "lValueRequested": false,
                              "nodeType": "IndexAccess",
                              "src": "5399:26:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_struct$_Proposal_$7981_storage",
                                "typeString": "struct DaoStructs.Proposal storage ref"
                              }
                            },
                            "id": 11402,
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "memberName": "draftVoting",
                            "nodeType": "MemberAccess",
                            "referencedDeclaration": 7959,
                            "src": "5399:38:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_struct$_Voting_$7930_storage",
                              "typeString": "struct DaoStructs.Voting storage ref"
                            }
                          },
                          "src": "5389:48:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                            "typeString": "struct DaoStructs.Voting storage pointer"
                          }
                        },
                        "id": 11404,
                        "nodeType": "ExpressionStatement",
                        "src": "5389:48:43"
                      }
                    ]
                  }
                },
                {
                  "body": {
                    "id": 11460,
                    "nodeType": "Block",
                    "src": "5611:202:43",
                    "statements": [
                      {
                        "condition": {
                          "argumentTypes": null,
                          "commonType": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          },
                          "id": 11432,
                          "isConstant": false,
                          "isLValue": false,
                          "isPure": false,
                          "lValueRequested": false,
                          "leftExpression": {
                            "argumentTypes": null,
                            "baseExpression": {
                              "argumentTypes": null,
                              "id": 11428,
                              "name": "_votes",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11376,
                              "src": "5629:6:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                                "typeString": "bool[] memory"
                              }
                            },
                            "id": 11430,
                            "indexExpression": {
                              "argumentTypes": null,
                              "id": 11429,
                              "name": "i",
                              "nodeType": "Identifier",
                              "overloadedDeclarations": [],
                              "referencedDeclaration": 11419,
                              "src": "5636:1:43",
                              "typeDescriptions": {
                                "typeIdentifier": "t_uint256",
                                "typeString": "uint256"
                              }
                            },
                            "isConstant": false,
                            "isLValue": true,
                            "isPure": false,
                            "lValueRequested": false,
                            "nodeType": "IndexAccess",
                            "src": "5629:9:43",
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            }
                          },
                          "nodeType": "BinaryOperation",
                          "operator": "==",
                          "rightExpression": {
                            "argumentTypes": null,
                            "hexValue": "74727565",
                            "id": 11431,
                            "isConstant": false,
                            "isLValue": false,
                            "isPure": true,
                            "kind": "bool",
                            "lValueRequested": false,
                            "nodeType": "Literal",
                            "src": "5642:4:43",
                            "subdenomination": null,
                            "typeDescriptions": {
                              "typeIdentifier": "t_bool",
                              "typeString": "bool"
                            },
                            "value": "true"
                          },
                          "src": "5629:17:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_bool",
                            "typeString": "bool"
                          }
                        },
                        "falseBody": {
                          "id": 11458,
                          "nodeType": "Block",
                          "src": "5729:74:43",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 11456,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 11446,
                                      "name": "_voting",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11389,
                                      "src": "5747:7:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                                        "typeString": "struct DaoStructs.Voting storage pointer"
                                      }
                                    },
                                    "id": 11451,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "noVotes",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 7923,
                                    "src": "5747:15:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                                      "typeString": "mapping(address => uint256)"
                                    }
                                  },
                                  "id": 11452,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11448,
                                      "name": "_voters",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11373,
                                      "src": "5763:7:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                        "typeString": "address[] memory"
                                      }
                                    },
                                    "id": 11450,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11449,
                                      "name": "i",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11419,
                                      "src": "5771:1:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "5763:10:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_address",
                                      "typeString": "address"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "5747:27:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 11453,
                                    "name": "_weights",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11379,
                                    "src": "5777:8:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                                      "typeString": "uint256[] memory"
                                    }
                                  },
                                  "id": 11455,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 11454,
                                    "name": "i",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11419,
                                    "src": "5786:1:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "5777:11:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "5747:41:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 11457,
                              "nodeType": "ExpressionStatement",
                              "src": "5747:41:43"
                            }
                          ]
                        },
                        "id": 11459,
                        "nodeType": "IfStatement",
                        "src": "5625:178:43",
                        "trueBody": {
                          "id": 11445,
                          "nodeType": "Block",
                          "src": "5648:75:43",
                          "statements": [
                            {
                              "expression": {
                                "argumentTypes": null,
                                "id": 11443,
                                "isConstant": false,
                                "isLValue": false,
                                "isPure": false,
                                "lValueRequested": false,
                                "leftHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "expression": {
                                      "argumentTypes": null,
                                      "id": 11433,
                                      "name": "_voting",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11389,
                                      "src": "5666:7:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_struct$_Voting_$7930_storage_ptr",
                                        "typeString": "struct DaoStructs.Voting storage pointer"
                                      }
                                    },
                                    "id": 11438,
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "memberName": "yesVotes",
                                    "nodeType": "MemberAccess",
                                    "referencedDeclaration": 7919,
                                    "src": "5666:16:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_mapping$_t_address_$_t_uint256_$",
                                      "typeString": "mapping(address => uint256)"
                                    }
                                  },
                                  "id": 11439,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "baseExpression": {
                                      "argumentTypes": null,
                                      "id": 11435,
                                      "name": "_voters",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11373,
                                      "src": "5683:7:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                                        "typeString": "address[] memory"
                                      }
                                    },
                                    "id": 11437,
                                    "indexExpression": {
                                      "argumentTypes": null,
                                      "id": 11436,
                                      "name": "i",
                                      "nodeType": "Identifier",
                                      "overloadedDeclarations": [],
                                      "referencedDeclaration": 11419,
                                      "src": "5691:1:43",
                                      "typeDescriptions": {
                                        "typeIdentifier": "t_uint256",
                                        "typeString": "uint256"
                                      }
                                    },
                                    "isConstant": false,
                                    "isLValue": true,
                                    "isPure": false,
                                    "lValueRequested": false,
                                    "nodeType": "IndexAccess",
                                    "src": "5683:10:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_address",
                                      "typeString": "address"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": true,
                                  "nodeType": "IndexAccess",
                                  "src": "5666:28:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "nodeType": "Assignment",
                                "operator": "=",
                                "rightHandSide": {
                                  "argumentTypes": null,
                                  "baseExpression": {
                                    "argumentTypes": null,
                                    "id": 11440,
                                    "name": "_weights",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11379,
                                    "src": "5697:8:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                                      "typeString": "uint256[] memory"
                                    }
                                  },
                                  "id": 11442,
                                  "indexExpression": {
                                    "argumentTypes": null,
                                    "id": 11441,
                                    "name": "i",
                                    "nodeType": "Identifier",
                                    "overloadedDeclarations": [],
                                    "referencedDeclaration": 11419,
                                    "src": "5706:1:43",
                                    "typeDescriptions": {
                                      "typeIdentifier": "t_uint256",
                                      "typeString": "uint256"
                                    }
                                  },
                                  "isConstant": false,
                                  "isLValue": true,
                                  "isPure": false,
                                  "lValueRequested": false,
                                  "nodeType": "IndexAccess",
                                  "src": "5697:11:43",
                                  "typeDescriptions": {
                                    "typeIdentifier": "t_uint256",
                                    "typeString": "uint256"
                                  }
                                },
                                "src": "5666:42:43",
                                "typeDescriptions": {
                                  "typeIdentifier": "t_uint256",
                                  "typeString": "uint256"
                                }
                              },
                              "id": 11444,
                              "nodeType": "ExpressionStatement",
                              "src": "5666:42:43"
                            }
                          ]
                        }
                      }
                    ]
                  },
                  "condition": {
                    "argumentTypes": null,
                    "commonType": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    },
                    "id": 11424,
                    "isConstant": false,
                    "isLValue": false,
                    "isPure": false,
                    "lValueRequested": false,
                    "leftExpression": {
                      "argumentTypes": null,
                      "id": 11422,
                      "name": "i",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11419,
                      "src": "5593:1:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "nodeType": "BinaryOperation",
                    "operator": "<",
                    "rightExpression": {
                      "argumentTypes": null,
                      "id": 11423,
                      "name": "_length",
                      "nodeType": "Identifier",
                      "overloadedDeclarations": [],
                      "referencedDeclaration": 11381,
                      "src": "5597:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "src": "5593:11:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "id": 11461,
                  "initializationExpression": {
                    "assignments": [
                      11419
                    ],
                    "declarations": [
                      {
                        "constant": false,
                        "id": 11419,
                        "name": "i",
                        "nodeType": "VariableDeclaration",
                        "scope": 11463,
                        "src": "5578:9:43",
                        "stateVariable": false,
                        "storageLocation": "default",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        },
                        "typeName": {
                          "id": 11418,
                          "name": "uint256",
                          "nodeType": "ElementaryTypeName",
                          "src": "5578:7:43",
                          "typeDescriptions": {
                            "typeIdentifier": "t_uint256",
                            "typeString": "uint256"
                          }
                        },
                        "value": null,
                        "visibility": "internal"
                      }
                    ],
                    "id": 11421,
                    "initialValue": {
                      "argumentTypes": null,
                      "hexValue": "30",
                      "id": 11420,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": true,
                      "kind": "number",
                      "lValueRequested": false,
                      "nodeType": "Literal",
                      "src": "5590:1:43",
                      "subdenomination": null,
                      "typeDescriptions": {
                        "typeIdentifier": "t_rational_0_by_1",
                        "typeString": "int_const 0"
                      },
                      "value": "0"
                    },
                    "nodeType": "VariableDeclarationStatement",
                    "src": "5578:13:43"
                  },
                  "loopExpression": {
                    "expression": {
                      "argumentTypes": null,
                      "id": 11426,
                      "isConstant": false,
                      "isLValue": false,
                      "isPure": false,
                      "lValueRequested": false,
                      "nodeType": "UnaryOperation",
                      "operator": "++",
                      "prefix": false,
                      "src": "5606:3:43",
                      "subExpression": {
                        "argumentTypes": null,
                        "id": 11425,
                        "name": "i",
                        "nodeType": "Identifier",
                        "overloadedDeclarations": [],
                        "referencedDeclaration": 11419,
                        "src": "5606:1:43",
                        "typeDescriptions": {
                          "typeIdentifier": "t_uint256",
                          "typeString": "uint256"
                        }
                      },
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11427,
                    "nodeType": "ExpressionStatement",
                    "src": "5606:3:43"
                  },
                  "nodeType": "ForStatement",
                  "src": "5573:240:43"
                }
              ]
            },
            "documentation": "@notice Mock function to add fake votes in the past for a proposal\n@dev This will never be available in the deployment, only for test purposes\n@param _proposalId ID of the proposal\n@param _roundIndex Index of the voting round\n@param _isDraftPhase Boolean, whether updating the votes for draft phase or not\n@param _voters Array of addresses of the voters\n@param _votes Boolean array of the votes (for or against)\n@param _weights Uint array of the voting weights\n@param _length Length of the above arrays (number of voters)\n@param _startOfVotingRound start of this voting round",
            "id": 11463,
            "implemented": true,
            "isConstructor": false,
            "isDeclaredConst": false,
            "modifiers": [],
            "name": "mock_put_past_votes",
            "nodeType": "FunctionDefinition",
            "parameters": {
              "id": 11384,
              "nodeType": "ParameterList",
              "parameters": [
                {
                  "constant": false,
                  "id": 11366,
                  "name": "_proposalId",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5006:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bytes32",
                    "typeString": "bytes32"
                  },
                  "typeName": {
                    "id": 11365,
                    "name": "bytes32",
                    "nodeType": "ElementaryTypeName",
                    "src": "5006:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bytes32",
                      "typeString": "bytes32"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11368,
                  "name": "_roundIndex",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5035:19:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11367,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "5035:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11370,
                  "name": "_isDraftPhase",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5064:18:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_bool",
                    "typeString": "bool"
                  },
                  "typeName": {
                    "id": 11369,
                    "name": "bool",
                    "nodeType": "ElementaryTypeName",
                    "src": "5064:4:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_bool",
                      "typeString": "bool"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11373,
                  "name": "_voters",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5092:17:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_address_$dyn_memory_ptr",
                    "typeString": "address[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11371,
                      "name": "address",
                      "nodeType": "ElementaryTypeName",
                      "src": "5092:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_address",
                        "typeString": "address"
                      }
                    },
                    "id": 11372,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "5092:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_address_$dyn_storage_ptr",
                      "typeString": "address[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11376,
                  "name": "_votes",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5119:13:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_bool_$dyn_memory_ptr",
                    "typeString": "bool[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11374,
                      "name": "bool",
                      "nodeType": "ElementaryTypeName",
                      "src": "5119:4:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_bool",
                        "typeString": "bool"
                      }
                    },
                    "id": 11375,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "5119:6:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_bool_$dyn_storage_ptr",
                      "typeString": "bool[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11379,
                  "name": "_weights",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5142:18:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_array$_t_uint256_$dyn_memory_ptr",
                    "typeString": "uint256[]"
                  },
                  "typeName": {
                    "baseType": {
                      "id": 11377,
                      "name": "uint256",
                      "nodeType": "ElementaryTypeName",
                      "src": "5142:7:43",
                      "typeDescriptions": {
                        "typeIdentifier": "t_uint256",
                        "typeString": "uint256"
                      }
                    },
                    "id": 11378,
                    "length": null,
                    "nodeType": "ArrayTypeName",
                    "src": "5142:9:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_array$_t_uint256_$dyn_storage_ptr",
                      "typeString": "uint256[]"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11381,
                  "name": "_length",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5170:15:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11380,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "5170:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                },
                {
                  "constant": false,
                  "id": 11383,
                  "name": "_startOfVotingRound",
                  "nodeType": "VariableDeclaration",
                  "scope": 11463,
                  "src": "5195:27:43",
                  "stateVariable": false,
                  "storageLocation": "default",
                  "typeDescriptions": {
                    "typeIdentifier": "t_uint256",
                    "typeString": "uint256"
                  },
                  "typeName": {
                    "id": 11382,
                    "name": "uint256",
                    "nodeType": "ElementaryTypeName",
                    "src": "5195:7:43",
                    "typeDescriptions": {
                      "typeIdentifier": "t_uint256",
                      "typeString": "uint256"
                    }
                  },
                  "value": null,
                  "visibility": "internal"
                }
              ],
              "src": "4996:232:43"
            },
            "payable": false,
            "returnParameters": {
              "id": 11385,
              "nodeType": "ParameterList",
              "parameters": [],
              "src": "5248:0:43"
            },
            "scope": 11464,
            "src": "4968:851:43",
            "stateMutability": "nonpayable",
            "superFunction": null,
            "visibility": "public"
          }
        ],
        "scope": 11465,
        "src": "66:5755:43"
      }
    ],
    "src": "0:5822:43"
  },
  "compiler": {
    "name": "solc",
    "version": "0.4.25+commit.59dbf8f1.Emscripten.clang"
  },
  "networks": {},
  "schemaVersion": "2.0.2",
  "updatedAt": "2020-03-13T02:38:46.092Z"
}